欢迎来到it培训的黄埔军校——智游教育!

如何用python抓取招聘网站信息?-永利国际

于2018-05-07 10:40:21 发表在技术干货
作为一个技术流,如何在招聘的时候运用上炫酷的技能让找工作效率更高?信息更精准?今天,智游教育的小编为大家带来一篇实实在在的干货:利用python爬虫抓取智联招聘信息。
希望这篇实用性高、操作性强的小文章助力各位读者大人找到心仪的工作~
 
利用python爬虫抓取招聘信息之前,您需要做以下准备:
 
运行平台:windows
python版本:python3.6
ide:sublime text
其他工具:chrome浏览器
 
步骤一网页分析:
首先,分析请求地址
以北京海淀区的“python工程师”这一职位为例进行网页分析。
在搜索栏输入“python工程师”,点击搜索。接下来跳转到搜索结果页面,按“f12”打开开发者工具,然后在"热门地区"栏选择"海淀",我们看一下地址栏:
搜索python工程师 
由地址栏后半部分searchresult.ashx?jl=北京&kw=python工程师&sm=0&isfilter=1&p=1&re=2005可以看出,我们要自己构造地址了。接下来要对开发者工具进行分析,按照如图所示步骤找到我们需要的数据:request headers和query string parameters :
请求地址 
构造请求地址:
构造请求地址 
请求头:
请求头 
然后,分析有用数据
从搜索结果中我们需要的数据有:职位名称、公司名称、公司详情页地址、职位月薪:
网页元素定位 
通过网页元素定位找到这几项在html文件中的位置,如下图所示:
网页元素 
用正则表达式对这四项内容进行提取:
用正则表达式提取内容 
注意:解析出来的部分职位名称带有标签,如下图所示:
带标签的解析内容 
那么在解析之后要对该数据进行处理剔除标签,用如下代码实现:
剔除标签 
 
步骤二写入文件:
我们获取到的数据每个职位的信息项都相同,可以写到数据库中,但是本文选择了csv文件,以下为百度百科解释:
逗号分隔值(comma-separated values,csv,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。
由于python内置了csv文件操作的库函数,所以很方便:
写入文件 
 
步骤三进度显示:
要想找到理想工作,一定要对更多的职位进行筛选,那么我们抓取的数据量一定很大,几十页、几百页甚至几千页,那么我们要掌握抓取进度心里才能更加踏实啊,所以要加入进度条显示功能。
 
步骤四完整代码:
执行完成所有代码以后会在py同级文件夹下会生成名为:zl_北京_python工程师.csv的文件,打开之后效果如下:
完整代码