- 浏览: 962949 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (385)
- 搜索引擎学习 (62)
- 算法 (1)
- 数据库 (15)
- web开发 (38)
- solr开发 (17)
- nutch 1.2 系统学习 (8)
- cms (1)
- 系统架构 (11)
- linux 与 unix 编程 (16)
- android (15)
- maven (1)
- 关注物流 (1)
- 网址收集 (1)
- 分布式,集群 (1)
- mysql (5)
- apache (1)
- 资料文档备份 (7)
- 上班有感 (0)
- 工作流 (15)
- javascript (1)
- weblogic (1)
- eclipse 集成 (1)
- JMS (7)
- Hibernate (1)
- 性能测试 (1)
- spring (6)
- 缓存cache (1)
- mongodb (2)
- webservice (1)
- HTML5 COCOS2D-HTML5 (1)
- BrowserQuest (2)
最新评论
-
avi9111:
内陷到android, ios, winphone里面也是随便 ...
【HTML5游戏开发】二次开发 BrowserQuest 第一集 -
avi9111:
呵呵,做不下去了吧,没有第二集了吧,游戏是个深坑,谨慎进入,其 ...
【HTML5游戏开发】二次开发 BrowserQuest 第一集 -
excaliburace:
方案3亲测完全可用,顺便解决了我其他方面的一些疑问,非常感谢
spring security 2添加用户验证码 -
yuanliangding:
Spring太强大了。
Spring Data JPA 简单介绍 -
小高你好:
什么是hibernate懒加载?什么时候用懒加载?为什么要用懒加载?
Nutch-0.9中,org.apache.nutch.crawl.Crawl类中提供了一个入口主函数main,通过接收键入的命令行,根据命令行指定的参数对Nutch进行配置,从而启动Nutch抓取程序,通过阅读org.apache.nutch.crawl.Crawl类的源代码来了解Nutch是如何根据接收的命令行进行配置及其启动的。
org.apache.nutch.crawl.Crawl类的主函数如下所示:
// 应该知道,Nutch查找文件系统是基于Linux系统的机制的,所以提供启动的命令与Linux的Shell命令很相似。 public static void main(String args[]) throws Exception { Configuration conf = NutchConfiguration.create(); // 使用静态类NutchConfiguration创建一个org.apache.hadoop.conf.Configuration实例,可以在Hadoop的源代码中查看到该类的定义(读取hadoop-site.xml配置文件) Path rootUrlDir = null; // 初始URLs文件所在的目录,使用Hadoop的org.apache.hadoop.fs.Path类创建目录 for (int i = 0; i < args.length; i++) { // 根据读取的命令行,设置抓取工作配置信息。 FileSystem fs = FileSystem.get(job); // 根据抓取工作配置JobConf创建一个用来存放抓取到的网页的目录。 if (LOG.isInfoEnabled()) { // 登录日志信息 // 在目录dir下面创建下面5个目录,用来存放,抓取工作过程中不同操作生成的文件或者目录。 Path tmpDir = job.getLocalPath("crawl"+Path.SEPARATOR+getDate()); indexer.index(indexes, crawlDb, linkDb, fs.listPaths(segments)); // 索引过程 |
通过上面的源代码的整体分析,总结一下具体都在这里做了哪些工作:
1、读取命令行参数,合法以后才继续初始化配置实例;
2、通过读取hadoop-site.xml配置文件,初始化一个Configuration实例,并根据crawl-tool.xml文件内容设置抓取工作配置;
3、设置一些默认抓取工作参数,如果命令行中没有指定就会按照默认的参数值进行抓取工作的执行,比如,抓取工作抓取到的网页文件存放目录rootUrlDir、启动的抓取工作进程数threads、抓取深度depth、抓取网页数量topN;
4、创建抓取工作抓取到的网页文件的存放目录,及其子目录(crawldb、linkdb、segments、indexes、index),这些子目录有的是用来存放原生网页,有的是预处理网页文件,有的是网页解析出的文本内容及其其它相关数据等等;
5、在抓取工作及其索引过程中,要进行很多操作来对网页文件或数据进行处理,这通过初始化一些实现了这些操作的类的实例来完成的,例如:Injector、Generator、Fetcher、ParseSegment、CrawlDb、LinkDb、Indexer、DeleteDuplicates、IndexMerger。这些类中,有的是作为实体类,像CrawlDb、LinkDb,它们需要在抓取工作执行过程中及时更新,保持数据状态的处于良好正确状态。
6、最后,就开始执行相关操作了,包括初始化CrawlDb、生成抓取工作列表、抓取网页文件、更新CrawlDb、倒排Links、建立索引、复制索引文件、合并索引文件。
发表评论
-
nutch1.4 环境变量设置
2012-04-06 12:52 1739Exception in thread "main& ... -
正则使用
2010-06-18 00:19 1158java正则表达式(java.Regex)HtmlParser ... -
nutch 1.0 读源码,过滤掉不正确的URL实现方法
2010-06-18 00:17 3417nutch 1.0 读源码,过滤掉不正确的URL实现方法: ... -
Exception in thread "main" org.apache.hadoop.mapred.InvalidInputExnutch新发现,为以后备忘
2010-06-16 23:16 2303urls -dir mycrawl -depth 3 -top ... -
HTMLParser 解析html字符串,提取纯文本
2010-05-14 09:59 8333今天在群里问别人怎么提取文本,也没有具体告诉我用什么,只是说用 ... -
HTMLParser的两种使用方法[转]
2010-05-13 23:37 1959HTMLParser的两种使用方法 文章分类:Java编程 ... -
搜索引擎术语
2010-05-05 11:40 1443附录. 术语 B: 半结构化 ... -
影响Lucene索引速度原因以及提高索引速度技巧[转]
2010-04-25 00:11 2750影响Lucene索引速度原因以及提高索引速度技巧 关键字: ... -
如何配置compass的索引位置为相对路径
2009-09-01 19:28 1512Compass是对lucene进行封装 ... -
heritrix 基本介绍
2009-08-01 10:35 3922Heritrix使用小结 1. H ... -
我对HtmlParser 提取网页各属性的总结及示例说明
2009-07-08 13:50 1950/** * 属性过滤器 * @param parser ... -
数学之美 系列十三 信息指纹及其应用
2009-06-25 22:34 10442006年8月3日 上午 11:17:00 ... -
数学之美系列二十一 - 布隆过滤器(Bloom Filter)
2009-06-25 22:27 15202007年7月3日 上午 09:35:00 ... -
用HTMLParser提取URL页面超链接的一段代码(小试牛刀)
2009-06-06 16:54 7101用HTMLParser提取URL页面超 ... -
深入学习Heritrix---解析处理器(Processor)
2009-06-06 13:17 1635键字: heritrix processor 本节解析与 ... -
深入学习Heritrix---解析Frontier(链接工厂)
2009-06-06 10:02 1228Frontier是Heritrix最核心的组成部分之一,也是最 ... -
深入学习Heritrix---解析CrawlController
2009-06-06 10:00 1391当我们以Web UI方式使用Heritrix时,点击任务开始( ... -
深入学习Heritrix---解析Frontier(链接工厂)
2009-06-03 21:50 1526原创作者: pengranxiang 阅读:231次 ... -
lucene2.0+heritrix示例补充
2009-06-03 21:31 1553由于lucene2.0+heritrix一书示例用的网站( ... -
htmlparser 使用手册
2009-05-30 16:47 29312009-05-08 14:20 需要做一 ...
相关推荐
### Eclipse中编译Nutch-0.9:详解与步骤 #### 核心知识点概览 在本篇文章中,我们将深入探讨如何在Eclipse环境中编译Nutch-0.9,一个开源的网络爬虫项目,用于抓取互联网上的网页信息。文章涵盖的关键知识点包括...
1. **下载Nutch源码**:首先,从Apache官方网站或者镜像站点下载Nutch-0.9的源代码。将下载的源码解压到你想要的工作目录下,例如`C:\nutch\src\nutch-0.9`。 2. **配置环境变量**:打开Cygwin终端,设置必要的环境...
在研究和使用Nutch-2.1源代码时,你可以深入了解搜索引擎的各个组成部分,如爬虫的实现、索引过程的细节、查询处理的算法等,这对于提升自己的搜索引擎技术知识非常有帮助。同时,Nutch也是研究搜索引擎优化(SEO)...
在e盘下面出现nutch-0.9文件夹说明解压成功了.然后环境变量设置为NUTCH_JAVA_HOME=C:\Program Files\Java\jdk1.5.0(也就是说跟JAVA_HOME是相同的).测试nutch是否安装成功,只需要执行以下命令: $cd D:/Downloads/...
安装完上述依赖后,将Nutch的源代码包下载到本地,解压至指定目录,如C:\nutch-0.9。解压后,需要修改nutch-site.xml文件以配置Nutch运行时的相关参数,例如配置抓取的用户代理名称: ```xml <name>...
`apache-nutch-2.3.1-src.tar.gz` 是 Apache Nutch 的源代码包,版本号为 2.3.1,以 tar.gz 格式压缩。 这个压缩包中包含的主要文件和目录结构如下: 1. **src**: 这是 Nutch 的源代码存放位置,分为多个子目录,...
apache-nutch-2.2.1(Eclipse直接运行版)今天刚做的,发现有很多坑,分享给大家实验,JDK1.7 Win10。我分享的两个压缩卷一起下载才可以用,资源限制太小了 002地址:...
在“apache-nutch-1.7-src.tar.gz”这个压缩包中,你将获得Nutch 1.7的源代码,这使得开发者可以深入了解其工作原理,并对其进行定制和扩展。解压后的文件夹“apache-nutch-1.7”包含了所有必要的组件和配置文件。 ...
- **Git**:获取nutch-windows-script项目的源代码。 - **Cygwin**或**Git Bash**:提供类似于Linux的命令行环境。 安装完这些依赖后,你可以按照以下步骤操作: 1. **克隆项目**:使用Git从GitHub上克隆“nutch-...
在这个"apache-nutch-1.4-bin.tar.gz"压缩包中,包含了运行 Nutch 的所有必要组件和配置文件,适合初学者和开发者快速部署和实验。 **Nutch 的核心组成部分:** 1. **爬虫(Spider)**:Nutch 的爬虫负责在网络中...
- **配置文件**:Nutch的运行依赖于一系列配置文件,如`conf/nutch-site.xml`,用户可以通过修改这些文件来定制爬虫行为。 - **插件系统**:Nutch支持丰富的插件体系,如URL过滤器、解析器、索引器等,开发者可以...
然后,根据项目需求,可以编辑配置文件(如conf/nutch-site.xml)来定制爬虫行为,如设置爬取策略、抓取频率、存储路径等。 7. **扩展性与集成**: Nutch的设计使其易于与其他系统集成,比如可以与Hadoop结合实现...
nutch-web-api 它是什么 nutch-web-api是 Apache Nutch 爬虫应用程序的 RESTFul API 实现。 这个项目完全是用 node.js 和 coffeescript 编写的,目的是简化使用并提高灵活性。 REST API 不是 apache nutch 应用程序...
这个源码包 "apache-nutch-1.3-src.tar.gz" 和 "nutch-1.3.tar.gz" 包含了 Nutch 1.3 的源代码和编译后的二进制文件,对于开发者和研究者来说是非常有价值的资源。 **Nutch 概述** Nutch 是基于 Java 开发的,遵循 ...
nutch配置nutch-default.xml
这个`apache-nutch-1.6-src.tar.gz`文件包含了Nutch 1.6的源代码,允许开发者深入研究其内部机制,定制自己的爬虫需求,或者为项目贡献代码。 源代码包`apache-nutch-1.6`中通常包含以下几个关键部分: 1. **源...
#### 二、分页代码分析 根据提供的代码片段,我们可以看到这是一段 JSP (Java Server Pages) 代码,用于实现分页功能。该代码主要通过动态生成 HTML 表单来实现页面之间的跳转。接下来我们将逐步解析这段代码。 ##...
通过执行bin/nutch crawl命令,可以开始网页抓取,并在nutch-0.9目录下生成crawl文件夹存储结果。 然后,测试Nutch自带的搜索引擎。将nutch-0.9-war部署到Tomcat服务器上,并对nutch-site.xml进行配置。在运行过程...
接下来,需从官方网站下载Nutch-1.0的源代码压缩包(`nutch-1.0.tar.gz`),并进行解压。随后,在Eclipse中创建一个新的Java项目,命名可自定义,如“Nutch”,并在创建过程中选择“从现有源代码创建项目”选项,...
4. **配置与部署**:解压 "apache-nutch-1.9" 文件后,需要根据你的环境配置`conf/nutch-site.xml`文件,设置包括抓取间隔、并发度、存储路径等参数。同时,可能还需要配置`conf/regex-urlfilter.txt`和`conf/...