数据采集:如何使用八爪鱼采集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 格式的文件。

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

至此,采集数据完毕。

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

我们下次再见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/869992.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新浪子授权系统网站源码 全开源免授权版本

最新浪子授权系统网站源码 全开源免授权版本 此版本没有任何授权我已经去除授权,随意二开无任何加密。 更新日志 1.修复不能下载 2.修复不能更新 3.修复不能删除用户 4.修复不能删除授权 5.增加代理后台管理 6.重写授权读取文件 7.修复已经知道漏洞 源码下…

土壤分析仪:解密土壤之奥秘的科技先锋

在农业生产和生态保护的道路上,土壤的质量与状况一直是我们关注的焦点。土壤分析仪,作为现代科技在农业和环保领域的杰出代表,以其高效、精准的分析能力,为我们揭示了土壤的奥秘,为农业生产提供了科学指导,…

【PTA天梯赛】L1-006 连续因子(20分)

作者:指针不指南吗 专栏:算法刷题 🐾或许会很慢,但是不可以停下来🐾 文章目录 题目题解题意步骤 总结 题目 题目链接 题解 题意 求解n的最长连续因子 和因子再相乘的积无关,真给绕进去了 步骤 双重循…

阿里云操作系统智能助手OS Copilot实验测评报告

简介:作为一名学生,阿里云操作系统智能助手OS Copilot对学生的帮助主要体现在提高学习效率、简化操作流程和优化系统管理等方面。通过其丰富的功能,从系统信息的快速获取到复杂的系统运维管理,OS Copilot都能为学生提供极大的便利…

硅谷甄选二(登录)

一、登录路由静态组件 src\views\login\index.vue <template><div class"login_container"><!-- Layout 布局 --><el-row><el-col :span"12" :xs"0"></el-col><el-col :span"12" :xs"2…

kali安装vulhub遇到的问题及解决方法(docker及docker镜像源更换)

kali安装vulhub&#xff1a; 提示&#xff1a;项目地址 https://github.com/vulhub/vulhub 项目安装&#xff1a; git clone https://github.com/vulhub/vulhub.git 安装docker 提示&#xff1a;普通用户请使用sudo&#xff1a; 首先安装 https 协议、CA 证书 apt-get in…

针对tcp不出网打——HTTP封装隧道代理(以CFS演示)

目录 上传工具到攻击机 使用说明 生成后门文件 由于电脑短路无法拖动文件&#xff0c;我就wget发送到目标主机tunnel.php文件​ 成功上传​ 可以访问上传的文件 启动代理监听 成功带出 后台私信获取弹药库工具reGeorg 上传工具到攻击机 使用说明 生成后门文件 pyt…

和鲸科技荣耀入选2024 H1 「中国最具价值 AGI 创新机构 TOP 50」

以下文章来源于Founder Park&#xff0c;作者Founder Par 大模型的盛宴&#xff0c;不应该只属于那些无数光环加身的算法天才们。 模型的冰山一角下&#xff0c;是应用层的暗流涌动&#xff0c;这是一个更庞大&#xff0c;也更隐秘的蓝海。但发掘这一切的前提是&#xff0c;所…

【RHCE】NFS 实验

主服务器 下载nfs-utils软件包&#xff1a; 1.如果停⽌该服务&#xff0c;启动并启⽤该服务&#xff1a; systemctl enable - now rpcbind 2.要启动 NFS 服务器&#xff0c;并使其在引导时⾃动启动&#xff1a;systemctl enable - now nfs- server 3.配置防火墙&#xff0c;开…

pd虚拟机去虚拟化是什么意思?pd虚拟机去虚拟化教程 PD虚拟机优化设置

Parallels Desktop for Mac&#xff08;PD虚拟机&#xff09;去虚拟化是指在虚拟机&#xff08;Virtual Machine&#xff0c;简称 VM&#xff09;中禁用或减少虚拟化层的影响&#xff0c;使其表现更接近于物理机。这种操作通常用于提高虚拟机的性能或解决某些软件兼容性问题。具…

ASP.NET Core----基础学习04----Model模型的创建 服务的注入

文章目录 1. 创建Models文件夹&#xff0c;3个文件的内容如下&#xff1a;&#xff08;1&#xff09;模型的创建&#xff08;2&#xff09;服务的注入 1. 创建Models文件夹&#xff0c;3个文件的内容如下&#xff1a; &#xff08;1&#xff09;模型的创建 模型的基础类Student…

每日Attention学习9——Efficient Channel Attention

模块出处 [CVPR 20] [link] [code] ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks 模块名称 Efficient Channel Attention (ECA) 模块作用 通道注意力 模块结构 模块代码 import torch import torch.nn as nn import torch.nn.functional …

【雷达原理】数字波束形成(DBF)

目录 一、数字波束形成1.1 DBF原理1.2 工程应用实现方式1.2.1 预先存储权矢量1.2.2 利用DFT/FFT实现DBF 二、DBF应用2.1 通道间相干积累2.2 测量目标角度 三、MATLAB代码 一、数字波束形成 数字波束形成&#xff08;Digital Beam Forming&#xff0c;DBF) 技术&#xff0c;是针…

PDF 分割拆分 API 数据接口

PDF 分割拆分 API 数据接口 文件处理&#xff0c;PDF 高效的 PDF 分割工具&#xff0c;高效处理&#xff0c;可永久存储。 1. 产品功能 高效处理大文件&#xff1b;支持多语言字符识别&#xff1b;支持 formdata 格式 PDF 文件流传参&#xff1b;支持设置每个 PDF 文件的页数…

电脑压缩视频怎么压缩,电脑压缩视频大小

随着科技的进步&#xff0c;我们越来越喜欢用视频记录生活中的点点滴滴。但随之而来的问题就是&#xff0c;视频文件体积庞大&#xff0c;给我们的存储和分享带来了不小的困扰。那么&#xff0c;有没有什么方法能够轻松解决这个问题呢&#xff1f;答案当然是肯定的&#xff01;…

如何保证Redis缓存和数据库的数据一致性

前言 如果项目业务处于起步阶段&#xff0c;流量非常小&#xff0c;那无论是读请求还是写请求&#xff0c;直接操作数据库即可&#xff0c;这时架构模型是这样的&#xff1a; 但随着业务量的增长&#xff0c;项目业务请求量越来越大&#xff0c;这时如果每次都从数据库中读数据…

【Redis】简单了解Redis中常用的命令与数据结构

希望文章能给到你启发和灵感&#xff5e; 如果觉得文章对你有帮助的话&#xff0c;点赞 关注 收藏 支持一下博主吧&#xff5e; 阅读指南 开篇说明一、基础环境说明1.1 硬件环境1.2 软件环境 二、Redis的特点和适用场景三、Redis的数据类型和使用3.1字符串&#xff08;String&…

LabVIEW电容器充放电监测系统

概述 为了对车用超级电容器的特性进行研究&#xff0c;确保其在工作时稳定可靠并有效发挥性能优势&#xff0c;设计了一套车用超级电容器充放电监测系统。该系统通过利用传感器、USB数据采集卡、可调直流稳压电源、电子负载以及信号调理电路&#xff0c;完成对各信号的采集和超…

springboot中通过jwt令牌校验以及前端token请求头进行登录拦截实战

前言 大家从b站大学学习的项目侧重点好像都在基础功能的实现上&#xff0c;反而一个项目最根本的登录拦截请求接口都不会写&#xff0c;怎么拦截&#xff1f;为什么拦截&#xff1f;只知道用户登录时我后端会返回一个token&#xff0c;这个token是怎么生成的&#xff0c;我把它…

VBA即用型代码手册:根据预定义的文本条件删除行

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率&#xff0c;而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。 作为我的学员要利用我的积木编程思想&#xff0c;积木编程最重要的是积木如何搭建…