java爬虫抓取动态网页(使用java语言开发的一款开源的爬虫工具(Heritrix))
优采云 发布时间: 2022-01-16 17:16java爬虫抓取动态网页(使用java语言开发的一款开源的爬虫工具(Heritrix))
今天要和大家分享的是一款使用java语言开发的开源爬虫工具----Heritrix。
大家好,我是奋斗中的小强001。今天的内容将推荐一个用java开发的开源爬虫工具(Heritrix),希望对大家有所帮助。
介绍
Heritrix是java开发的开源网络爬虫,用户可以使用它从互联网上爬取想要的资源。它最好的地方在于其良好的扩展性,方便用户实现自己的爬取逻辑。它是 SourceForge 上的开源产品。
它是如何工作的和工作流程
Heritrix的爬取工作主要由两个核心模块完成,一个是core class核心类,另一个是pluggable modules插件模块。
它的核心类是整个爬虫开发包的核心,可以在此基础上进行定制,但核心类不能被覆盖。反之,可以直接更换插件模块,插件模块相当于插件类型。组件,您也可以使用自己实现的逻辑来替换插件模块。这样就可以更好的根据自己的业务需求自定义爬虫的爬取需求。
整个heritrix技术的工作原理和工作流程是由CrawlController下载控制器决定的,它是整个爬虫操作的启动器,控制着一个爬虫爬取的开始和结束,然后边界控制器Frontier负责采集采集url,下载控制器负责从边界控制器获取对应的url,交给对应的线程池处理。组织和处理。
因为heritrix的url爬取工作是由多个线程执行的,每个线程对应一个url,对应的处理器链执行一次。因此,在整个爬取过程中,最重要的是处理器链。让我们看看处理器链如何处理 url 处理。
第一个是预取链。顾名思义,预取链就是在处理url之前提前准备一些先决条件。
提取链就是将url对应的网页上的所有信息下载整理,然后写入对应的请求响应内容。
提取链:在完成上一步的内容提取后,提取链主要负责提取页面上的a标签,然后提取其他对应的url。
写链主要是把所有的结果组织起来,然后存储起来。
提交链:就是对url做最后的整理工作,然后在采集到的页面上提交其他url,只要把任务范围内的url提交给Frontier,让它做其他的爬取工作。
四、heritrix3安装下载教程1)下载说明
下载heritrix3.x版本的方法还有很多。下面我们推荐几种常用的下载方式:
1、首先推荐heritrix官网直接下载最新版本,因为官网提供的版本是最权威的最新版本,没有bug。它们已经过官方测试,所以它是我们的第一个下载渠道。,但官网地址在国外,有时需要翻墙访问。
2、其次,我们可以直接在GitHub上下载,因为GitHub是源代码下载的权威网站,下载后可以直接使用开发工具直接编译,但是GitHub优先推荐发布版本的儿子。GitHub仓库地址:
2)环境说明
Heritrix对环境依赖有版本要求,所以需要在环境配置的上下文中进行说明。本文文章及以下应用均基于heritrix3.2的版本,该版本所依赖的Java环境JDK为1.7。目前,3.2 版本似乎不支持 jdk1.8。如果将来支持它,我们也会这样做。详细说明和备注。
五、在Linux系统上配置环境变量
按照上面截图的步骤,首先需要配置JDK的环境变量。一般来说,学习爬虫的同学应该对Java非常熟悉。Java_home的环境变量可以直接按照上图的步骤进行配置。故意重复。
第三,heritrix启动和执行都需要权限才能正常启动,所以需要按照上图中的命令配置执行权限。
第三,heritrix启动和执行都需要权限才能正常启动,所以需要按照上图中的命令配置执行权限。
六、启动并运行
由于我们的下载、安装和环境变量配置操作都是在Linux系统上完成的,所以我们在启动heritrix的时候,也需要从命令行启动它。下图显示了我们的启动命令方法和控制台的详细信息。,heritrix登录的默认登录名和密码为admin。
以上步骤完成后,说明heritrix已经正常启动,我们可以在浏览器中访问heritrix的web界面了。默认访问地址为:localhost:8443,即web界面的访问地址。需要注意的是,浏览器的请求方式必须是HTTPS访问。
今天的内容就分享到这里,欢迎大家点赞关注!谢谢!