🦀️ 后羿采集器——最良心的爬虫软件_卤代烃 - 码子裤

技术标签:   HTTP  TCP/IP  CSS  网站  爬虫

🦀️ 后羿采集器——最良心的爬虫软件

作者:卤代烃


2020 年如果让我推荐一款大众向的数据采集软件,那一定是后裔采集器[1]了。和我之前推荐的 web scraper 相比,如果说 web scraper 是小而精的瑞士军刀,那后裔采集器就是大而全的重型武器,基本上可以解决所有的数据爬取问题。

下面我们就来聊聊,这款软件的优秀之处。

一、产品特点

1.跨平台

后羿采集器是一款桌面应用软件,支持三大操作系统:Linux、Windows 和 Mac,可以直接在官网上免费下载[2]

2.功能强大

后羿采集器把采集工作分为两种类型:智能模式流程图模式

智能模式[3]就是加载网页后,软件自动分析网页结构,智能识别网页内容,简化操作流程。这种模式比较适合简单的网页,经过我的测试,识别准确率还是挺高的。

流程图模式[4]的本质就是图形化编程。我们可以利用后裔采集器提供的各种控件,模拟编程语言中的各种条件控制语句,从而模拟真人浏览网页的各种行为爬取数据。

3.导出无限制

这个可以说是后羿采集器最良心的功能了。

市面上有很多的数据采集软件,出于商业化的目的,多多少少会对数据导出进行限制。不清楚套路的人经常用相关软件辛辛苦苦采集了一堆数据,结果发现导出数据需要花钱。

后羿采集器就没有这个问题,它的付费点[5]主要是体现在 IP 池和采集加速等高级功能上,不但导出数据不花钱,还支持 Excel、CSV、TXT、HTML 多种导出格式,并且支持直接导出到数据库,对于普通的用户来说完全够用了。

4.教程详细

我在本文动笔之前曾经想过先写几篇后羿采集器的使用教程,但是看了他们的官网教程后就知道没这个必要了,因为写的实在是太详细了。

后羿采集器的官网提供了两种教程,一种是视频教程[6],每个视频五分钟左右;一种是图文教程[7],手把手教学。看完这两类教程后还可以看看他们的文档中心[8],写的也非常详细,基本覆盖了该软件的各个功能点。

二、基础功能

1.数据抓取

基本的数据抓取非常简单:我们只要点击「添加字段」那个按钮,就会出现一个选择魔棒,然后点选要抓取的数据,就能采集数据了:

2.翻页功能

我在介绍 web scraper 时曾把网页翻页分为 3 大类:滚动加载分页器加载点击下一页加载

对于这三种基础翻页类型,后羿采集器也是完全支持的。

不像 web scraper 的分页功能散落在各种选择器上,后羿采集器的分页配置集中在一个地方上,只要通过下拉选择,就可以轻松配置分页模式。相关的配置教程可见官网教程:如何设置分页[9]

3.复杂表单

对于一些多项联动筛选的网页,后羿采集器也能很好的处理。我们可以利用后裔采集器里的流程图模式,去自定义一些交互规则。

例如下图,我就利用了流程图模式里的点击组件模拟点击筛选按钮,非常方便。

三、进阶使用

1.数据清洗

我在介绍 web scraper 时,说 web scraper 只提供了基础的正则匹配功能,可以在数据抓取时对数据进行初步的清洗。

相比之下,后羿采集器提供了更多的功能:强大的过滤配置,完整的正则功能和全面的文字处理配置。当然,功能强大的同时也带来了复杂度的提升,需要有更多的耐心去学习使用。

下面是官网上和数据清洗有关的教程,大家可以参考学习:

  • 如何设置数据筛选[10]讲解了基础的数据清洗功能,可以避免采集过程中的无效采集(例如采集某个微博博主的数据时,可以过滤第一条置顶微博的数据,只采集正常时间流的微博)
  • 如何设置采集范围[11]讲解了采集过程中过滤不需要的采集项,可以方便的自定义采集范围(例如采集豆瓣电影 TOP 250 时,只采集前 100 名的数据,而不是全量的 250 条数据)
  • 如何对采集字段进行配置[12]讲解了如何定制采集的最小字段,并且支持叠加处理,可以对一个字段使用多种匹配规则。(例如只想采集「1024 个赞」这条文本里的数字,就可以设置相应的规则过滤掉汉字)

2.流程图模式

本文前面也介绍过了,流程图模式的本质就是图形化编程。我们可以利用后裔采集器提供的各种控件,模拟编程语言中的各种条件控制语句,从而模拟真人浏览网页的各种行为爬取数据。

比如说下图这个流程图,就是模拟真人浏览微博时的行为去抓取相关数据。

经过我个人的几次测试,我认为流程图模式有一定的学习门槛,但是和从头学习 python 爬虫比起来,学习曲线还是缓和了不少。如果对流程图模式很感兴趣,可以去官网[13]上学习,写的非常详细。

3.XPath/CSS/Regex

无论是什么爬虫软件,他们都是基于一定的规则去抓取数据的。XPath/CSS/Regex 就是几个常见的匹配规则。后羿采集器支持自定义这几种选择器,可以更灵活的选择要抓取的数据。

比如说某个网页里存在数据 A,但只有鼠标移到对应的文字上才会以弹窗的形式显示出来,这时候我们就可以自己写一个对应的选择器去筛选数据。

XPath

XPath 是一种在爬虫中运用非常广泛的数据查询语言。我们可以通过 XPath 教程[14]去学习这个语言的运用。

CSS

这里的 CSS 特指的 CSS 选择器,我之前介绍 web scraper 的高级技巧时,讲解过 CSS 选择器的使用场景和注意事项。感兴趣的人可以看我写的 CSS 选择器教程

Regex

Regex 就是正则表达式。我们也可以通过正则表达式去选择数据。我也写过一些正则表达式的教程。但是个人认为在字段选择器这个场景下,正则表达式没有 XPath 和 CSS 选择器好用。

4.定时抓取/IP 池/打码功能

这几个都是后羿采集器的付费功能,我没有开会员,所以也不知道使用体验怎么样。在此我做个小小的科普,给大家解释一下这几个名词是什么意思。

定时抓取

定时抓取非常好理解,就是到了某个固定的时间爬虫软件就会自动抓取数据。市面上有一些比价软件,背后就是运行着非常多的定时爬虫,每隔几分钟爬一下价格信息,以达到价格监控的目的。

IP 池

互联网上 90% 的流量都是爬虫贡献的,为了降低服务器的压力,互联网公司会有一些风控策略,里面就有一种是限制 IP 流量。比如说互联网公司后台检测到某个 IP 有大量的数据请求,超过了正常范围,就会暂时的封锁这个 IP,不返回相关数据。这时候爬虫软件就会自己维护一个 IP 池,用不同的 IP 发送请求,降低 IP 封锁的概率。

打码功能

这个功能就是内置了验证码识别器,可以实现机器打码 or 手动打码,也是绕过网站风控的一种方法。

四、总结

个人认为后羿采集器是一款非常优秀的数据采集软件。它提供的免费功能可以解决绝大部分编程小白的数据抓取需求。

如果有一些编程基础,可以明显的看出一些功能是对编程语言逻辑的封装,比如说流程图模式是对流程控制的封装,数据清洗功能是对字符串处理函数的封装。这些高阶功能扩展了后羿采集器的能力,也增大了学习难度。

我个人看来,如果是轻量的数据抓取需求,更倾向于使用 web scraper;需求比较复杂,后羿采集器是个不错的选择;如果涉及到定时抓取等高级需求,自己写爬虫代码反而更加可控。

总而言之,后羿采集器是一款优秀的数据采集软件,非常推荐大家学习和使用。

联系我

因为文章发在各大平台上,账号较多不能及时回复评论和私信,有问题可关注公众号 ——「卤蛋实验室」,(或 wx 搜索egglabs)关注上车防失联。

参考资料

[1]

后裔采集器: http://www.houyicaiji.com/

[2]

免费下载: http://www.houyicaiji.com/?type=download

[3]

智能模式: http://www.houyicaiji.com/?type=post&pid=831

[4]

流程图模式: http://www.houyicaiji.com/?type=post&pid=831

[5]

付费点: http://www.houyicaiji.com/?type=pricing

[6]

视频教程: http://www.houyicaiji.com/?type=videolist

[7]

图文教程: http://www.houyicaiji.com/?type=post&pid=2619

[8]

文档中心: http://www.houyicaiji.com/?type=tutorial

[9]

如何设置分页: http://www.houyicaiji.com/?type=post&pid=7489

[10]

如何设置数据筛选: http://www.houyicaiji.com/?type=post&pid=4157

[11]

如何设置采集范围: http://www.houyicaiji.com/?type=post&pid=7803

[12]

如何对采集字段进行配置: http://www.houyicaiji.com/?type=post&pid=1001

[13]

官网: http://www.houyicaiji.com/?type=post&pid=1437

[14]

XPath 教程: https://www.runoob.com/xpath/xpath-tutorial.html

文章分享自微信公众号:
卤蛋实验室

本文参与 码字裤自媒体分享计划 ,欢迎热爱写作的你一起参与!

作者:卤代烃
原始发表时间:2020-07-27
如有侵权,请联系 heekey.com 删除。



 

 
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:http://www.heekey.com/article/weixin_1945819.html

智能推荐

NAR | 董波/王师/李语丽合作建立首个横跨动物界的进化发育组学数据库平台

进化发育生物学(EvoDevo)是近年来国际上迅速崛起的新兴前沿交叉学科,旨在通过研究生物界高度多样化的发育过程,从而深刻归纳阐释发育过程背后隐藏的进化驱动机制...

JSP和Servlet的六种中文乱码处理方法

在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以请求的时候便有get请求和p...

软件测试-禅道下载及安装-测试人员必会工具

我这里用的是:【https://www.zentao.net/download/zentaopms.pro9.0.3-80318.html】

介绍一下XMLHttpRequest对象,他有哪些常用方法和属性

  XMLHttpRequest是ajax的核心,通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新

Ajax的get与post的区别,什么时候使用post?

  get和post在HTTP中都代表着请求数据,其中get请求相对来说更简单、快速,效率高些

Spring框架中有哪些不同类型的事件

如果一个bean实现了ApplicationListener接口,当一个ApplicationEvent 被发布以后,bean会自动被通知。 

Ajax工作流程(原生Ajax)

(1)初始化XMLHttpRequest对象。不同浏览器的差异,需要我们创建一个跨浏览器的对象,并判断XMLHttpRequest对象创建是否成功,如果不成功,...

Spring Boot CLI安装(WIN10、macOS系统)

利用了起步依赖和自动配置,让人专注于代码本身能检测到使用了哪些类,要向Classpath添加哪些起步依赖才能运转起来,接着一系列自动配置就会接踵而来,确保启用s...