Python爬虫拉勾网

  • 时间:
  • 浏览:0
  • 来源:uu快3诀窍_uu快3app安卓_导航网

打开拉勾网输入职位信息,都可不能否看了亲戚大伙儿你都可不能否 的数据,当亲戚大伙儿翻页的事先都可不能否发现地址是这么任何变化的,而且都可不能否取舍亲戚大伙儿整个输入查询的过程是通过post请求和异步加载完成的 ;

image.png

思路梳理

下面是删改代码,整体思路是先根据职位+城市获取到总页数,而且通过循环post页码获取到职位信息,通过pandas保存数据为DataFrame,最后保存为excel

下面是亲戚大伙儿的headers和都要post的数据,其中都要注意的是headers中Referer是一一5个 多变量,根据职位的信息不同改变的,Referer是服务器都要取舍你是从哪个页面访问过来的,上方的调试中也取舍了拉勾网是对Referer进行了检查的,将会Referer不对,服务器会拒绝请求而且冒出上图的页面;

但当亲戚大伙儿直接访问这个 地址的事先亲戚大伙儿是看只有职位信息的,看来服务器对headers是有检查的,而且亲戚大伙儿在发送请求的事先还都要再加headers;

亲戚大伙儿当时人看嘴笨 在json的url上方是中有 了城市的这个 变量的,而且亲戚大伙儿你都可不能否 查看不同城市的职位只都要在url上方改变城市就好;

亲戚大伙儿获取到整个json数据中是会中有 职位数的,每页是显示15个职位,职位数除以15向上取整,便是亲戚大伙儿都要循环的次数

代码次要

打开控制台再次加载页面看看亲戚大伙儿得到了那些,亲戚大伙儿你都可不能否 的职位信息都好好的躺在这里的,信息也有 以json格式传输的,亲戚大伙儿只都要调用json的包读取那些数据而且保存下来就ok了 ;

首先是将字符串转成URL编码,将会是utf-8编码直接传入到地址上方,是无法访问到,这个 在上方的城市和职位都都要用来转换;

亲戚大伙儿都要post的数据又一一5个 多,多切换2个页面也会发现,first是表示’是是是否是是为第一页’,pn是表示’页码’,kd是表示’职位关键字’,而且亲戚大伙儿只都要结合json的地址中的city变量+post的职位和页码就能获取到亲戚大伙儿你都可不能否 的数据了!

运行结果