`
guoyunsky
  • 浏览: 839338 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
3d3a22a0-f00f-3227-8d03-d2bbe672af75
Heritrix源码分析
浏览量:203249
Group-logo
SQL的MapReduce...
浏览量:0
社区版块
存档分类
最新评论
文章列表
     欢迎加入Heritrix群(QQ):109148319        近段时间在搞定Lucene的一些问题,所以Heritrix源码分析暂时告一段落。今天下午在群里有同学提到了Heritrix异常终止的问题以及让Heritrix不停的抓取(就是抓完一遍后载入种子继续抓取,目前他是写个定时器,定时检查Heritrix是否停止,如果停止了则重新初始化Heritrix,让Heritrix重新抓取,但这个方法就不可避免的会导致抓取重复URl,除非从recover.gz导入)。我想这2个问题都可以用我下面这个方法,但对于Heritrix异常终止的问题这个方法也只是治标不治本,要改动的地方 ...
      工作过程中抓取了很多手机号码,现需要获取他们的归属地。于是自己写了个工具类,这个工具类只是基本了实现该功能,没有考虑其他因素。       我知道手机号码归属地的判断是根据前7位,一开始本想获取他们的规律,就是哪个号码段的手机是属于哪个地区,但发现自己无法获取。于是想到了有一些网站有这个功能,同时自己也写爬虫,于是利用爬虫的思路去完成这个功能。这里大概思路是通过HttpClient去模拟提交那些网站的查询功能,这里是www.ip138.com,然后通过正则表达式去解析HttpClient相应内容,从里面抽取出手机归属地。同时对要查询的手机进行一个验证,具体代码请看如下:    ...
      本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/650744       欢迎加入Heritrix群(QQ):109148319         上一篇博客主要介绍了CrawlController的各个属性,博客地址:http://guoyunsky.iteye.com/blog/650744 ,以及三个特殊的属性.这里就介绍它的相关方法,首先从初始化开始介绍,主要请看代码以及注释:          1.Heritrix的初始化:   /** * 初始化CrawlController * @param ...
      本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/650694              欢迎加入Heritrix群(QQ):109148319       CrawlController的确是Heritrix的大脑,在Heritrix中拥有无上的权利!可以控制Heritrix的启动、暂停、停止,也定时进行数据统计、数据汇报和文件管理。同时CrawlController也基本上贯穿整个Heritrix代码,和CrawlURI一样。同时CrawlController纯代码页进2000行,下面就先介绍里面的属性和主 ...
                  本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/649889          欢迎加入Heritrix群(QQ):109148319        Url是爬虫的核心,因为爬虫就是依赖URL一层一层的抓取下去,最 ...
                   本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/649737        欢迎加入Heritrix群(QQ):109148319         以前在做Web开发的时候就接触过一些HttpStatus Code,比如404,500.后来接触Heritrix之后才知道HttpStatus Code竟然有如此之多。不一样的HttpStatus Code就代表不一样的Http状态,简单的如成功、失败、重定向等。Heritrix自己也根据自己的需求增加了一些,同时由于Heritrix通过H ...
             本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/644396        欢迎加入Heritrix群(QQ):109148319         前面说过Heritrix可以在某个抓取基础上(这里假设为A)继续抓取,因为Heritri ...
             本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/643367       欢迎加入Heritrix群(QQ):109148319         Heritrix采用多线程去抓取数据,每次运行基本都要经过以下8个处理器处理(种子URL、先决条件URL除外),如此形成一整个流程。下面就大概介绍下每个处理器的作用以及大概处理的步骤。以后分析源码的时候再细节分析......         8个处理器都继承org.archive.crawler.framework.Processor类,然后每个处理器 ...
             本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642794          欢迎加入Heritrix群(QQ):109148319           网上关于Heritrix的基本介绍有很多,这里就不再重复。我这里主要介 ...
       本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642618        欢迎加入Heritrix群(QQ):109148319          每通过Heritrix运行一次抓取后,发现在该Job目录下就会有很多文件。这里说明下每个文件的作用,同时更主要介绍它的日志文件,因为我们可以通过日志文件发现Heritrix的抓取情况。首先贴个图:        以上就是Heritrix完成的文件结构,现在一一说明   序号 文件名 说明 1 order.xml Heritrix运行的所有配 ...
     本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642550        欢迎加入Heritrix群(QQ):109148319         在Heritrix注释里说Heritrix有三种启动方式,但我感觉只有两种:一种是通过tomcat或者JBOSS或者Jetty等Web容器,还有一种自然就是不通过Web直接编程运行。由于第二种方式更适合调试、研究代码,所以这里就介绍下它的编程启动方式吧....这里贴上示例代码以及注释:     import java.io.File; import javax. ...
     本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/632191        欢迎加入Heritrix群(QQ):109148319    9.org.archive.crawler.fetcher 序号 类 说明 1 FetchDNS 获取DNS数据,如IP 2 FetchFTP 获取FTP数据 3 FetchHTTP 获取HTTP数据 4 HeritrixHttpMethodRetryHandler HTTP重试处理器,重新去连接HTTP     1 ...
           本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/630347     欢迎加入Heritrix群(QQ):109148319           Heritrix的类的确很繁琐,往往继承了一层又一层,最多的继承好像有7层。下面就一个包一个包的说明每个类的作用,由于里面Heritrix组件分明,很多组件没用到的同时该组件的类我也没怎么接触,所以这里会忽略一部分,如果有知道的请补充,谢谢!如果对包还有不熟悉的,可以查看我前面的文章,这里也给出链接http://guoyunsky.iteye.com/ad ...
           本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/629891     欢迎加入Heritrix群(QQ):109148319           Heritrix的order.xml分了很多组件,可以灵活的配置各个抓取参数。但很多人都关心如何使得抓取更快更久更多,这里首先从Heritrix自身着手吧,修改order.xml的一些参数其实也可以达到这一目的.        下面就列出各个参数、说明和理想值       序号 配置名 理想值 说明 1 <long name= ...
     本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/613412      欢迎加入Heritrix群(QQ):109148319           order.xml是整个Heritrix的核心,里面的每个一个配置都关系到Heritrix的运行情况,没读源码之前我只能从有限的渠道去获知这些配置的运用.读完之后才知道Heritrix竟然有如此灵活的运用,如可以控制抓取速度,可以优化电脑性能,可以在某一次的抓取上继续抓取.当然整个order.xml里我也没有全部掌握,只知道大部分配置的作用,希望大家指点改正以及补充 ...
Global site tag (gtag.js) - Google Analytics