爬虫设计思考之一
经常做爬虫的人对于技术比较的执着,尤其是本身从事的擅长的技术领域,从而容易忽视与之相近或者相似的技术。因此我建议大家在遇到此类问题的时候,可以采用对比分析的方式来理解。 本次的思考是基于国内最大的中文搜索引擎百度以及自动化的机器人执行技术RPA.
一、常规的爬虫与百度爬虫异同之处:
相同之处:
1.都是通过自动化的程序从网页中提取数据
2.都需要对网站的数据进行去重处理以及数据清洗
3.都需要持续完善并维护采集系统
不同之处:
1.数据量级不同,百度的数据量级达到TB或者PB的级别,也是国内最大的中文搜索。
2.系统复杂度不同,我们常规的爬虫是通过脚本或者使用开源框架编写的爬虫,更多的做的是垂直领域的数据采集,而百度搜索系统类似通用爬虫,可以抓取整个互联网上的信息,因此复杂度相对较高。
3.网站友好度,常规的爬虫是不会遵循robots协议的,因此会对目标采集网站的正常使用产生严重的影响,而百度搜索引擎,则会遵循这个君子协议,网站允许的则抓取,不允许的则放弃抓取。对用户的网站影响较小,并且有益于网站的收录。
4.在一些场景下常规的爬虫可以更加高效的通过爬虫脚本快速的完成网站页面的数据提取,相对更加的灵活,快速,高效。
5.常规的爬虫在垂直领域的数据抓取的质量要相对较高,而百度搜索数据量大但是数据相对较为分散,专业性较低,因此,有些大佬们会说现在的百度已经变成了僵尸站点,人们很难在上面获取到有价值的数据了。
6.常规的爬虫可以由开发者控制爬虫的并发性,例如在一段时间内需要完成大量的数据采集,就需要提高爬虫的并发以及使用分布式爬虫去调高采集的效率。这样的爬虫控制权在自己的手中,有利于短时间完成采集任务。而百度的采集一般用户是可以在百度站点提交采集的频率,已限制百度对网站的影响。
二、常规的爬虫和RPA的异同点:
不同之处:
1.技术层面的不同,rpa是机器人自动化执行一些操作。模拟用户的点击选中,操作一些重复性比较高的业务流程工作。
2.应用方向的不同,爬虫是通过自动化的程序完成网站页面的数据提取,而rpa更加的侧重执行企业重复的业务流程的自动化。
3.用户体验,rpa作为自动化的机器人执行工具,相较于编写爬虫脚本执行自动化的流程来说更加的容易,现在市面上也有很多的这样的工具例如八爪鱼,影刀rpa。
4.适用群体,RPA适合有明确的业务流程及操作的业务使用,并不适用于所有的业务,必须是标准的流程管理及控制。需要对员工培训rpa的使用。
相同之处:
1.rpa也可以用来执行一些网站数据提取的任务,也可以充当爬虫使用。
2.爬虫和RPA都可以模拟人的点击,输入,拖拽等操作爬虫可以通过自动化测试的工具实现这样的模拟浏览器的操作,提高工作的效率节省人力成本。
3.rpa和爬虫都需要不断的对各自的脚本代码进行更新,持续维护。
爬虫技术和rpa技术的结合
可以更好的发挥技术对于业务赋能的能力,同时这两者的界限并不是特别的明确,一些rpa工具也可以实现网页抓取的功能。一些爬虫也可以通过自动化测试的库来完成模拟人的点击,输入、拖拽的能力。这种现状将会使爬虫和rpa的技术更加的成熟,更好的服务用户及为业务赋予更多的可能性,开拓更多的应用场景。
人工智能的技术加持
未来的爬虫和rpa的联系更加的紧密,也将会有更多的创新,不仅自动化还更加的智能化,为更多的行业发展提供更好的技术服务的支持。