一、前言
python以简练的语法、加上丰富的库,使之成为编写爬虫的标准语言。
事实上其它语言都是可以写爬虫的,只不过python用的最普遍而已。
本文以爬取某某直聘网站的职位信息为示例,带大家完成一个爬虫程序的开发。
二、网站分析
首先进入该网站的官方:BOSS直聘 (zhipin.com)
注意,如果没有登录,那么你需要先进行登录,然后进入其首页,开始搜索:
然后就可以看到搜索的职位结果:
我们的目标就是自动爬取这些搜索到的结果保存到本地,方便我们后面分析数据。
首先按F12,打开控制台:
并点击网络标签页,选择Fetch/XHR
。
首先网络标签页的作用就是追踪当前网站的所有网络请求,而Fetch/XHR
就是从服务器获取数据的请求类型。
如果你稍微懂一点前端开发,那么就会知道发送网络请求的浏览器api叫做fetch
函数,而XHR
则是另一种稍微复杂的发送网络请求的对象。
通过勾选它,就能直接过滤出来该网站所有向服务器发送的网络请求、从而可以追踪出该网站是如何从服务器获取数据的。
然后下一步,换一个关键字,点击搜索,让其向服务器发送请求获取查询数据:
然后你就能看到其向服务器发送了数个网络请求,通过观察其请求的名字,你也能很快锁定这个joblist.json
的请求,翻译过来就是工作列表嘛。
然后点击它,你就能看到完整的路径、以及请求的方法:
除此之外你还需要一个叫做cookies
的东西,它就是你登录后,网站给你的访问标识符,这也是cookies
的主要作用。
以及后面爬虫所需要的浏览器标识符,让服务器认为我们是正常的浏览器访问: