通过ajax接口爬取智联招聘

本文介绍了如何分析智联招聘的Ajax接口,通过模拟Ajax请求直接获取JSON数据来爬取职位信息。首先观察接口参数,发现start参数控制页面起始位置,pageSize固定为60。接着解析返回的JSON数据,提取工作名称、薪资和详情页链接。通过控制start生成爬取URL列表,请求详情页并保存到数据库。为了防止IP被封,还加入了下载限速器。
摘要由CSDN通过智能技术生成

        上次分析了抓取智联招聘网站遇到的坑,最后使用selenium模拟的方法抓取到了智联的招聘数据,但是我发现通过分析智联招聘的ajax接口,模拟ajax请求直接获取json数据这种方法更简单。

        分析网页ajax接口:在搜索框输入python,点击搜索,打开浏览器开发者模式,点击network,点击XHR过滤出来ajax请求

第一页:

这是搜索之后第一页的信息,可以看到很多参数,直接观察好像并不能查看出哪些参数对我们有用,那我们接着点击下一页继续分析

这是点击到第二页的参数,可以看到相比于第一页,这次的参数多出来一个start参数,数据为60。接着点击第三页,继续查看它的参数。

可以看到这里start参数变成了120,不难看出,start参数是控制页面每次显示的数据从第几条开始,pageSize为每页显示多少条数据,固定为60。到这里就已经明确可以通过urlencode将参数拼接,通过控制start的参数传入来控制我们要抓取哪些页的数据。

分析Preview:

通过对Preview的观察可以发现,返回的json数据中有一个data字段,data中包含有results字段,点击results字段可以发现网页上的工作名称,工作薪资,工作详情页的地址都在其中,那么我们就可以通过response.json方法获取到网页返回的json数据,从中解析出我们想要的数据。

代码思路:1.分析网页的ajax接口,需要传入哪些参数2.

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值