数据采集:如何使用八爪鱼采集BOSS直聘职位数据

大家好,我是水哥!

今天给大家分享的是数据采集实战:使用「八爪鱼」第三方工具来采集 BOSS 直聘上的数据分析职位数据。

接下来,我们详细看一看。

不重复造轮子

在工作中,我们一定要形成一个认知,能用第三方工具解决的一定用第三方工具解决。

在软件开发行业中,流行一个代码开发准则:不重复进行造轮子。

这句话告诉我们,要避免「重复劳动」,你碰到的任何一个问题,都可能存在已有的「解决方案」,只需找到它,并学会使用即可。

比如要爬取 BOSS 直聘网站上数据分析职位数据,我们第一步并不是去学习爬虫,而是去搜索是否有第三方工具可以代替我们编写「爬虫代码」

学习爬虫有门槛,对于不了解计算机网络和没有编程基础的人来说有难度。

如果目标不是成为爬虫工程师,只是为了做分析而去采集数据,完全可以用「第三方采集器」来代替编写爬虫代码。

也许花上一个小时学习第三方采集器的使用,就能代替你学习一个月的爬虫知识。

在工作中,公司更关注的是你的做事结果,而非过程。而选择什么样的工具来提升你的工作效率,这更为关键。

回到文章主题,我们来看一下八爪鱼这个第三方数据采集器的具体使用。

八爪鱼介绍

八爪鱼是一款第三方数据采集器,它号称「不懂网络爬虫技术,也可以轻松采集数据」。

八爪鱼支持本地采集、云采集两种方式,并支持导出各种格式数据。

并且还内置了丰富的网站数据源,提供「模板采集」功能,我们只需简单设置,就能快速准确获取数据。

八爪鱼不仅适用于采集简单网页,学习它的 XPath 功能后,还能采集复杂网页。

基本上「爬虫代码」能做到的事情,八爪鱼也能做到。

八爪鱼一些高级功能是收费的,但免费版就已经满足我们大部分数据采集需求了。

总之,八爪鱼是一款简单易用且功能强大的数据采集器,它将需要使用代码来完成的爬虫流程抽象成了可视化操作,让不懂网络爬虫的人,也能快速的进行采集数据。

八爪鱼下载

获取 Windows 版八爪鱼可以也可以使用水哥专属🔗注册八爪鱼,有惊喜

下载地址:https://affiliate.bazhuayu.com/tHEr9u

八爪鱼官方网站也有详细的安装指导。

在安装好八爪鱼后,我们需要注册账号进行登录后才能使用,也可以不注册账号使用短信或者微信这些第三方账号进行登录。

八爪鱼的使用流程

下面是使用八爪鱼来采集数据的一般流程:

八爪鱼采集数据的流程设计实现其实是模拟网络爬虫的过程,而网络爬虫本质也是模拟我们人工在浏览器访问网页的过程。

例如我们要浏览 BOSS 直聘上的数据分析岗位的职位详情,会怎么做呢?

第一步,我们会找到 BOSS 直聘网站的网页地址:https://www.zhipin.com/,然后在浏览器进行访问。

第二步,我们会在页面上选择数据分析职位,然后进入到职位列表页面。

接着,我们可能会点击某个职位的标题进入到职位详情页面。

在浏览完当前列表页的职位详情后,我们可能会切换页码,接着再浏览下个列表页面的职位数据。

使用八爪鱼采集数据,流程也是和浏览器访问网页的过程是一样的。

八爪鱼采集数据的流程:首先输入要采集的网页地址,接着进行设计流程,最后启动采集并导出数据。

这里的设计流程,对应的就是我们浏览网页时的一连串操作,目的是告诉八爪鱼要如何访问网页、该提取页面的哪些元素等,相当于告诉八爪鱼采集数据的规则。

比如像上面我们进行人工访问时的打开列表页、点击列表页的标题页进入到职位详情页、切换页码的操作就是对应八爪鱼里面的设计流程。

下面,我们来看一下使用八爪鱼采集数据的实际案例。

使用八爪鱼采集 BOSS 直聘职位数据

1. 实操视频

以下是本次数据采集操作的完整视频,大家可以先看一看,接下来水哥会给大家详细讲解每一个步骤。

2. 预备知识

在进行这个实操前,我们需要掌握八爪鱼的一些基础知识,大家可以访问八爪鱼官方教程来学习。

八爪鱼官方教程分为图文版和视频版两种,大家可以结合在一起来学习。

图文教程访问地址: https://www.bazhuayu.com/tutorial8/hottutorial/gnd

视频教程访问地址: https://www.bazhuayu.com/tutorial8/videotutorial/gnd

大家可以着重学习一下以下教程:

3. 确认网页地址

我们要采集的是 BOSS 直聘不同城市的数据分析职位数据。

通过分析可以知道,职位列表的网页地址有如下规律:

https://www.zhipin.com/web/geek/job?city=101230200&position=100511&page=1

其中 city 参数代表城市编码,position 参数代表职位编码,page 参数代表当前页面的页码。

通过浏览器的 F12(开发者工具),我们可以获取职位编码的接口为:https://www.zhipin.com/wapi/zpgeek/common/data/citysites.json

在浏览器访问这个接口地址,可以获取所有城市编码。

数据分析的职位编码是固定的,取值为 100511,在知道了城市编码后,我们就可以通过代码来生成每个城市第 1 到 15 页的职位列表网页访问地址。

水哥这里采用的是 Python 来生成这些网页地址,具体代码如下:

大家可以在公众号后台回复:地址,即可获取这些网页地址。

4. 输入网页地址

由于每个城市不同页码对应的职位列表的网页结构都相同,因此我们可以通过八爪鱼提供的「URL循环」,来批量采集同类型的网页。

打开八爪鱼客户端,点击新建自定义任务。

接着,将职位列表的网页地址复制粘贴到「网址输入框」,作为演示,水哥这里只输入 3 个网页地址:

输入完成后,点击「保存设置」,八爪鱼会自动跳转到「设计流程」界面。

5. 设计流程

在进入到设计流程界面后,我们需要点击「取消识别」功能。

这时候,八爪鱼会自动为我们生成「循环网址-打开循环中的网页」的流程。

八爪鱼会默认打开第一个网址的网页,把鼠标移动到列表中的任意一个标题,然后进行点击,会弹出「操作提示」弹窗,选择「选中全部相似元素」

点击「选中全部相似元素」后,会弹出下一步的操作提示弹窗,接着我们再选择「循环点击每个链接」

点击后,八爪鱼会弹出是否需要「设置翻页」的操作提示弹窗,我们选择不需要。

由于我们采集的网页地址包括了每个城市第 1 到 15 分页的职位列表数据,因此并不需要设置翻页,简化了设计流程。

接着,页面会从列表页进入到详情页,八爪鱼此时继续弹出「自动识别」的操作提示弹窗,我们选择「取消识别」

如果点击「取消识别」后,页面弹出「登录弹窗」,可以在右上角位置,将「浏览模式」开启,再点击关闭登录弹窗,再把「浏览模式」切换回关闭状态。

接着我们进行提取元素,将鼠标移动到需要采集的字段上,当出现蓝色的选中状态后,按住「ctrl键」的同时点击一下「鼠标左键」,会出现提取元素内容的操作提示弹窗。

我们选择「文本内容」进行提取。

点击后,我们会看到提取到的文本内容将会出现在底部,并且提取的字段将会出现「红色标记」的状态,代表提取成功了。

接着,用按同样的方式提取页面中我们想要采集的字段。提取完后,我们可以双击底部的字段名称进行重新命名。

我们还可以在流程设计中添加一些「高级设置」,比如在打开循环中的网址和循环列表的步骤中设置「执行前等待」

设置「执行前等待」的目的是为了让八爪鱼更像「人工」在访问网站,从而提高数据采集的成功率。

大多数网站都有做反爬虫处理,我们在爬取数据时,一旦被这些网站的反爬虫机制识别出来,将会对访问的账号、IP 等进行封禁,这样我们就无法顺利的完成数据的采集了。

设置「执行前等待」,模仿的是「真人」访问网页的行为。因为我们在实际访问网页时,都会停留几秒再进行下一步操作,这样就不会认为是爬虫脚本在访问它们的网页。

比如我们可以在「循环网址」步骤中设置执行前等待时间:在流程中点击「循环网址」,再点击右下角的「高级设置」,勾选「执行前等待」,在下拉框中选择 1 秒,设置完毕后点击「应用」

用同样的方式,可以设置流程中的「循环列表」的执行前等待时间。

在流程设置完毕后,需要点击右上角的「保存」,将流程保存下来,以便开始采集。

6. 采集

在设计好流程后,就可以进行数据采集了,点击右上角的「采集」,会出现「采集模式」的选择弹窗,我们选择「本地采集」中的「普通模式」

为了提高数据采集的成功率,我们可以选择登录到网页后再进行采集,具体步骤为:点击「暂停」按钮,再点击右上角的「显示网页」

切换到「显示网页」后,会看到当前正在采集的网页,我们可以选择在网页中进行登录后再进行采集。

注意:这里登录的不是你的八爪鱼账号,而是正在采集的网站账号。

在这个案例中,是指登录你的 BOSS 直聘网站的账号。

在登录成功后,可以点击**「返回」并继续采集。

采集成功后,我们可以将数据进行导出。

我们可以选择是否对数据进行去重。

我们选择去重数据,并且选择导出成 Excel 格式的文件。

我们看一下最终的导出效果。

至此,采集数据完毕。

好了,今天的文章就分享到这边了,如果觉得水哥的文章对你有帮助,欢迎将文章分享给你身边的朋友。

我们下次再见!

  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值