美文网首页呆鸟的Python数据分析
数据分析学习笔记(2)——爬取拉勾网数据分析师岗位

数据分析学习笔记(2)——爬取拉勾网数据分析师岗位

作者: 小陈学数据 | 来源:发表于2018-09-24 15:33 被阅读129次

    本次笔记主要记录了本人利用python编写爬虫对拉勾网的数据分析师岗进行爬取,因为打算从事数据分析师这个职业,所以想对这个职业进行一个数据分析。

    首先进行数据分析第一步是要获取数据,我选择了从拉勾网进行数据爬取。本次运用到的知识主要是python, html, json。

    先进入拉勾网并用Chrome浏览器的开发者工具对页面进行观察。

    红色区域即是当前元素所处位置

    观察发现其实标签内部数据并不是特别完整,很多数据都被藏在了元素内部,这样想通过Xpath提取会变得非常麻烦和困难,因此尝试其他方法,拉勾网具有反爬技术,为了防止盗链,采用了json页面传输数据,因此我选择去采集json数据。

    再进行一次搜索 利用开发者工具找到json页面 检查json数据

    发现有完整json数据,因此开始编写爬虫代码对数据进行爬取。

    首先要设置要访问的url网址和请求头文件。url网址是要爬取的页面域名,请求头文件则是访问网站时访问者的一些信息,例如用户名,所用浏览器,访问源头等,如果不设置头文件,则很大程度会因为访问频度过高被当作机器人而封杀ip。

    先通过开发者工具获取url地址。

    随后再通过开发者工具获取请求头文件Request Headers。其中主要是获取User-Agent, Referer 和Cookie。

    将以上内容分别写入代码中。

    设置url和请求头文件

    在发送请求的时候有两种发送参数方式,一种是get,另一种是post。post会以表格发送的方式发送给响应端,无法直接在链接中赋值,因此需要设置一个字典来作为表格数据发送给响应端。从开发者工具中可以看到表格内部的结构和信息。

    因此构建一个字典用来存储参数数据。

    这里使用request包来发送请求。

    发送请求后会得到一个response,同时为了避免编码错误要先将response的编码设置为utf-8。然后利用json包用的json.loads()方法将取得的response转化为字典格式。根据先前对json结构分析,要进入到嵌套字典的最内部才能取得一个result的list。

    在取出list以后将值返给函数并进入数据提取阶段。

    设置一个字典用以存储所要保存的值。

    随后开始批量提取并存储数据。

    在主函数中对每一页进行上述操作的循环。

    通过改变data中pn的值来进行翻页,同时在循环结束后,先将字典转为DataFrame格式,再用DataFrame中的内置方法进行处理并导出为csv格式文件。最终获取的文件可以用excel打开后效果如下。

    由于编码为utf-8因此Excel无法直接读取,在此将文件格式转为ansi以后,再次打开如下。

    本章结束,下一章将讲解如何用Excel进行数据清洗和数据分析。

    相关文章

      网友评论

        本文标题:数据分析学习笔记(2)——爬取拉勾网数据分析师岗位

        本文链接:https://www.haomeiwen.com/subject/unacoftx.html