爬取招聘数据 | scrapy 前程无忧51job

本文详细介绍了如何使用Python的Scrapy爬虫框架抓取51job网站上的职位信息。从预备知识开始,包括Python基础、正则表达式,然后通过抓包分析url地址、页码规律以及数据存储位置,发现数据存在于前端页面的script标签中。接着,通过正则表达式匹配提取json数据,并将其转化为Python字典。在代码编写部分,展示了如何编写start_requests、解析数据和提取职位详情页信息的步骤。最终实现对职位列表和详情页的爬取,获取包括职位名、公司名、工作地点、薪资等信息。

1. 预备知识

python语言,scrapy爬虫基础,正则表达式

2. 抓取目标结构

  1. 职位列表中的以下信息:
    在这里插入图片描述
  2. 点击职位,进入职位详情页中,提取以下信息:
    在这里插入图片描述

3.抓包分析

3.1 抓包分析url地址

先进入到我们的页面中来,选择想要爬取的城市,url地址会发生相应的变化并刷新,如下图所示:
在这里插入图片描述
复制地址栏的url链接地址如下:https://search.51job.com/list/120200,000000,0000,00,9,99,+,2,1.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=
根据第三章学到的知识,我们尝试对该url链接进行删减并测试删减后的url是否对访问结果产生影响,测试后删减的url结果如下:

https://search.51job.com/list/120200,000000,0000,00,9,99,+,2,1.html

访问并对比原网页可以发现,删减参数后的url地址所请求的页面,与原url请求的网页相差不大,均存在我们想要提取的信息。
结果如下:
在这里插入图片描述

3.2 分析页码规律

我们先打开删减版的url对应的页面,为了分析页码请求数据的规律,我们先将滑块移到最后,点击抓包工具中的clear按钮,清空当前存在的请求列表,防

评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lijiamingccc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值