如何获取58同城工作页面上的实时申请和浏览人数数据?

如何获取58同城工作页面上的实时申请和浏览人数数据?

如何利用爬虫获取58同城招聘页面的实时数据?

爬取58同城招聘信息时,常常遇到一个难题:页面显示的申请人数和浏览人数实时更新,但网页源代码却显示为0。然而,浏览器开发者工具(F12)中的Elements面板却显示了正确的数据。这是因为58同城使用了ajax技术异步加载数据。本文将指导您如何获取这些动态数据。

问题分析

以北京某医疗岗位为例,页面实时显示申请和浏览人数,但源代码中数据始终为0,而F12的Elements面板数据与页面一致。直接从源代码提取数据行不通。

解决方法

页面数据通过AJAX请求异步加载,我们需要找到并抓取这些请求的json数据。

经分析,58同城使用特定API接口提供这些数据。例如:

https://statisticszp.58.com/position/totalcount/?infoId=27988...

该接口返回JSON数据,例如:

{   "deliveryCount": 1141,   "commentCount": 0,   "infoCount": 4,   "resumeReadPercent": 0,   "referUrl": "",   "nextUrl": "null" }

其中”deliveryCount”代表申请人数,”infoCount”代表浏览人数。

操作步骤

  1. 定位AJAX请求: 使用浏览器开发者工具(F12),在Network面板中找到与页面动态数据相关的AJAX请求。
  2. 发送API请求: 使用爬虫工具(例如python的requests库)发送GET请求到上述API接口。
  3. 解析JSON数据: 从返回的JSON数据中提取”deliveryCount”和”infoCount”字段,即为实时申请人数和浏览人数。

通过以上步骤,即可成功获取58同城招聘页面实时申请和浏览人数数据。 请注意,infoId参数需要根据目标招聘页面进行替换。 为了避免对服务器造成过大压力,请控制爬取频率。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享