Heritrix1.14.4环境搭建

2023-11-02 01:38
文章标签 搭建 环境 heritrix1.14

本文主要是介绍Heritrix1.14.4环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Heritrix是一个基于Java的开源的具有高扩展性高灵活性的Web爬虫开源项目。

Heritrix的几大亮点如下:

        1.开源,如果你想了解爬虫相关知识,阅读Heritrix源码是不二之选。

        2.抓取性能高,配置灵活

        3.扩展性很好,便于进行二次开发

不过Heritrix让我唯一遗憾的是不支持分布式抓取,不过仍然不能否定Heritrix是一款不错的爬虫开源框架。,值得我们去学习它。

  这里我以Heritrix1.14.4版本为例进行讲解Heritrix环境的搭建。其实Heritrix目前版本已经更新到了3.2.0,但Heritrix1.14.4版本是1.x系列的最后一个封顶版本,是最为经典的一个版本,所以我们还是先从低版本开始学习,然后再研究3.x版本会比较轻松。

   Heritrix下载地址如下:
http://sourceforge.net/projects/archive-crawler/files/?source=navbar



 

 

 
下载完成后,你将会得到两个zip压缩包文件,heritrix-1.14.4-src.zipheritrix-1.14.4.zip。请解压heritrix-1.14.4.zip到任意盘符,这里我直接解压到E盘。解压后得到如图的目录结构:

 
目录结构说明如下:

bin: Heritrix的一些脚本文件

conf:Heritrix的配置文件,用于控制Heritrix的爬取行为

docs:HeritrixAPI文档,HTML格式

lib:Heritrix依赖的jar文件

webapps:Heritrixweb程序,其中admin.warHeritrixweb后台程序

 

heritrix-1.14.4.jarHeritrix的启动执行文件,只要你的.jar后缀文件与java.exe程序关联了,你双击heritrix-1.14.4.jar就会启动HeritrixHeritrix默认自带了Jetty容器。但官方打包的heritrix-1.14.4.jar文件里的MANIFEST.MF文件有点小问题,它没有添加lib依赖,所以我修改了它的MANIFEST.MF清单文件。heritrix-1.14.4.jarMANIFEST.MF清单文件查看方法如图:


 

 

 

 
修改之前MANIFEST.MF文件的内容如下:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.5.3 
Created-By: Apache Maven
Built-By: stack
Package: org.archive
Build-Jdk: 1.6.0_13
Extension-Name: heritrix
Specification-Title: An open-source, extensible, web-scale crawler.
Specification-Vendor: Internet Archive
Implementation-Title: org.archive
Implementation-Vendor: Internet Archive
Implementation-Version: 1.14.4
Main-Class: org.archive.crawler.Heritrix

 

 修改之后MANIFEST.MF文件内容如下:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.5.3 
Created-By: Apache Maven
Built-By: stack
Package: org.archive
Build-Jdk: 1.6.0_13
Extension-Name: heritrix
Specification-Title: An open-source, extensible, web-scale crawler.
Specification-Vendor: Internet Archive
Implementation-Title: org.archive
Implementation-Vendor: Internet Archive
Implementation-Version: 1.14.4
Main-Class: org.archive.crawler.Heritrix
Class-Path: lib/ant-1.6.2.jarlib/ant-1.6.2.jarlib/bsh-2.0b4.jarlib/commons-cli-1.0.jarlib/commons-codec-1.3.jarlib/commons-collections-3.1.jarlib/commons-httpclient-3.1.jarlib/commons-io-1.3.1.jarlib/commons-lang-2.3.jarlib/commons-logging-1.0.4.jarlib/commons-net-2.0.jarlib/commons-pool-1.3.jarlib/dnsjava-2.0.3.jarlib/fastutil-5.0.3-heritrix-subset-1.0.jarlib/itext-1.2.0.jarlib/jasper-compiler-tomcat-4.1.30.jarlib/jasper-runtime-tomcat-4.1.30.jarlib/javaswf-CVS-SNAPSHOT-1.jarlib/je-3.3.82.jarlib/jericho-html-2.6.jarlib/jets3t-0.5.0.jarlib/jetty-4.2.23.jarlib/joda-time-1.6.jarlib/junit-3.8.2.jarlib/libidn-0.5.9.jarlib/mg4j-1.0.1.jarlib/poi-2.0-RC1-20031102.jarlib/poi-scratchpad-2.0-RC1-20031102.jarlib/servlet-tomcat-4.1.30.jar

 至于MANIFEST.MF文件如何编写,MANIFEST.MF文件有什么编写规范,请自己Google学习,这里不做过多赘述。

MANIFEST.MF清单文件编写好了之后,我们需要把它覆盖到heritrix-1.14.4.jar下,如图:

 

   然后我们就能dos命令行下切到E:\heritrix-1.14.4路径下,然后java jar heritrix-1.14.4.jar来启动Heritrix,但为了方便(不想每次都敲这些命令),我们可以写个bat批处理文件,如图:

 
然后用文本编辑软件进行编辑,编辑内容如下:

%~d0
cd %~dp0
java -Xmx512m -Dheritrix.home=./ -jar heritrix-1.14.4.jar

 %~d0表示当前bat文件所在目录

 heritrix.home表示heritrix的安装根目录

 

然后我们就可以双击startup.bat文件来启动Heritrix,双击后dos窗口一闪而过,说明Heritrix启动失败了。这是因为我们还需要对Heritrix的配置文件进行一些修改。打开E:\heritrix-1.14.4\conf目录下的heritrix.properties配置进行编辑,如图:

 
然后我们再次启动Heritrix,会看到如图信息:

 
至此,Heritrix1.14.4就环境搭建成功了,打开浏览器,输入http://localhost:6789访问HeritrixWeb后台,你将看到如图的登录界面:

 
登录成功后界面如图:

 
至于如何通过Heritrix Web后台界面创建抓取任务进行数据抓取,留到下一篇来讲解,今天就到这里。

 

 

 益达的GitHub地址请猛戳我,用力,吃点劲儿!!!

  益达的新浪微博:看这里,看这里

  益达的技术交流社区:码农们,I want you!!!

 

   益达Q-Q:                7-3-6-0-3-1-3-0-5

 

 

   益达的Q-Q群:      1-0-5-0-9-8-8-0-6

这篇关于Heritrix1.14.4环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/327205

相关文章

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次

pico2 开发环境搭建-基于ubuntu

pico2 开发环境搭建-基于ubuntu 安装编译工具链下载sdk 和example编译example 安装编译工具链 sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib 注意cmake的版本,需要在3.17 以上 下载sdk 和ex

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

Go Playground 在线编程环境

For all examples in this and the next chapter, we will use Go Playground. Go Playground represents a web service that can run programs written in Go. It can be opened in a web browser using the follow

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom