公众号爬取拉勾网招聘数据,本文只讲重点,因为爬任何一个网站,可能最重要的就是遇到反爬怎么办,也就是第一步能不能爬下来数据的问题,本文讲如何爬取拉勾招聘数据

环境及软件:Linux乌邦图、redis、mysql、pycharm软件

所需库和包:截图中的

拉勾网招聘数据爬取(公布源码)

0、运行方法

构造城市列表和岗位列表,并发送请求,本文仅作学习参考,如果想爬取更多数据,请大家自己写方法获取拉勾所有城市和所有岗位

拉勾网招聘数据爬取(公布源码)

1、初始化数据

拉勾反爬手段,必须加referer地址,代理、请求头根据情况该怎么加就怎么加

找到的请求接口是post接口,并返回数据

用到redis对数据去重,所以添加的有redis初始化

用到CSV,也对CSV做了初始化(当然也可以用数据分析库pandas写入CSV,更方便)

拉勾网招聘数据爬取(公布源码)

拉勾网招聘数据爬取(公布源码)

拉勾网招聘数据爬取(公布源码)

2、提取数据(为了代码结构清晰,我对列表页和详情页分别写了两个方法)

列表页,直接json数据很方便提取,并调用获取详情页数据方法

拉勾网招聘数据爬取(公布源码)

详情页数据,通过xpath提取

拉勾网招聘数据爬取(公布源码)

3、通过redis实现对数据更新update还是增加insert

将公司名称和工作职位两个字段进行加密,生成指纹,存入redis,每次新来数据的时候,将新来的数据这两个字段加密,执行sadd方法,如果能加进去,说明是新数据,返回值1,如果加不进去,说明是重复数据,返回值是0

拉勾网招聘数据爬取(公布源码)

4、该代码为保存到mysql数据库代码,先将dict传入生成指纹方法,根据返回值是1还是0,分别执行insert和update操作

拉勾网招聘数据爬取(公布源码)

拉勾网招聘数据爬取(公布源码)

5、当然你也可以将数据顺便保存在CSV文件,方便查看

拉勾网招聘数据爬取(公布源码)

部分截图如下

拉勾网招聘数据爬取(公布源码)

经验有限,不足之处欢迎指正

相关文章:

  • 2021-07-06
  • 2022-12-23
  • 2021-12-30
  • 2021-11-19
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-24
  • 2021-12-26
  • 2021-04-22
  • 2021-06-24
  • 2021-09-30
  • 2022-12-23
  • 2021-09-10
相关资源
相似解决方案