大家好,又见面了,我是你们的朋友全栈君。
java爬虫框架非常多,比如较早的有Heritrix,轻量级的crawler4j,还有现在最火的WebMagic。 他们各有各的优势和劣势,我这里顺便简单介绍一下吧。
优势
java的第一批爬虫框架,拥有独立的后台页面,可以实现界面操作去爬去网页。
劣势
相对其他框架,代码相对臃肿,上手难度较高,解析网页不如其他框架灵活。
简单demo地址
优势
代码相当轻量级,可实现多线程爬取,上手难度低。
劣势
封装程度太低,很多功能需要开发者自己封装实现,多线程下,很容易重复爬取相同资源。
简单demo地址
优势
这框架我们公司在用,各方面都比较完美吧,上手难度低,社区活跃度也较高,有问题可以得到及时反馈。
劣势
没有持久层框架的封装,需要自己实现。
简单demo地址
这个框架我没有自己的demo,大家可以去开发者的GitHub看看
我这里推荐使用seimicrawler,个人感觉这个框架配合JsoupXpath,解析网页真心非常方便,而且框架整合了spring,用起来也很顺手。
中文官网地址: 官方Github地址: 自己修改项目地址:
导入项目
下载源码,解压后把demo目录的文件单独拿出来,project目录不用管,里面是这个框架的一些源码,demo直接maven依赖它就可以了。 以maven的形式,导入demo,等待jar拉取玩,项目不报错就说明导入成功了。
编写爬虫
打开crawlers文件夹,里面每个文件都是一个爬虫,我们可以学习一下,这是开发者写的最简单的爬虫demo,其他的都可以以此内推。
我来解释一下,表示把网页返回信息解析为一个类,支持JsoupXpath语法,比如,表示从网页根目录下,查找,并获取其href的值。具体语法可以见。
爬虫需要实现的具体业务,在方法里实现就行了,想要继续爬取新的网页,用实现,会新开启一个线程,,表示爬取,这个网页,并且回调方法。
表示爬虫名字。
启动爬虫
可以写一个函数, 一个对象,调用其方法机型了。
以上代码就表示启动爬虫,运行函数就开始爬取网页了。
图(1)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156729.html原文链接:https://javaforall.cn
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/java-jiao-cheng/17533.html