- 作者:xiaoxiao
- 发表时间:2020-12-23 10:59
- 来源:未知
来自:http://hedong.3322.org/archives/000218.html 车东
爬行者LARM是一个抓取网页的机器人,用纯Java写就。
通过作者的叙述,写一个爬行者,远非想象中的那么简单。HTML规范太简单了,所以会出很多标新立异的HTML文件。网络的随机性太强了,说不定就会遇到什么问题。这种种意外,都会考验一个爬行者。
LARM作为Lucene的子项目,还在开发之中,连个稳定版都没有,只能通过CVS取得。而且文档的说明也不统一,具有开发中的项目的共性。不过,它的随机文档还是把LARM的设想和特点说了,它还有一个wiki页面,不知为什么在sourceforge上还挂了一个名(这儿还有几篇RTF文档)。
LARM源码中,有一个GUI界面,把我乐坏了,一运行,怎么点击“Start”它也不活动,很郁闷,一看源码,“// to do: code goes here.”,根本没有对这个点击事件的处理代码。FT!
如果不考虑它与Lucene的关系,单当作一个爬行者来看,也有一定的使用价值。我下了这个项目,编译运行以后,对http://hedong.3322.org进行抓取,由于没限制域名,一下子到了5500多个域名,在下了300M左右,就把它中断了。
mkdir jakarta cd jakartacvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic loginpassword: anoncvscvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic checkout jakarta-lucene-sandbox
cd jakarta-lucene-sandbox/contributions/webcrawler-LARMant dist
把build/webcrawler_LARM-0.5.jar及libs/目录下的所有jar都加到classpath里去。
java -server de.lanlab.larm.fetcher.FetcherMain -start http://hedong.3322.org