一、前言
最近想做一份关于拉勾网数据分析类职业的报告,便顺手写了个简单的爬虫,记录分享如下。
二、思路整理
1、首先我们打开拉勾网,并搜索“”数据分析“”,显示出来的职位便是我们的目标
2、接下来我们需要确定,怎样将信息提取出来
(1)查看页面源代码,这时候发现,页面源码里面找不到职位相关信息,这证明拉勾网关于职位的信息是异步加载的,这也是一种很常用的技术
(2)异步加载的信息,我们需要借助chrome浏览器的小工具进行分析,按F12即可打开,界面如下:
(3)点击Nerwork进入网络分析界面,这时候是一片空白,刷新一下界面就可以看到一系列的网络请求了
(4)前面我们说到,拉勾网关于职位的信息是异步加载的,那么必定在这一系列的网络请求中,有某个请求发送到了服务器的接口处,响应职位信息。
(5)正常我们可以忽略css,png等类型的请求,关注点放在xhr这种类型请求上,如下:
(6)上图发现了两个xhr请求,从字面意思看很有可能是我们需要的信息,右键点击在另一个界面打开
(7)我们对比一下,上图显示的信息便是我们所要的职位信息,可以用json工具检验一下,更加直观
(8)之后再查看请求发送参数列表,到这里我们可以肯定city参数便是城市,pn参数便是页数,kd参数便是职位关键字
(9)思路分析到此结束了,接下来是代码了
三、代码
爬虫我按自己的习惯分成了四个部分,便于后期维护
1、基本https请求--https.py
这部分对requests包进行了一些封装,部分代码如下,完成post请求
d