nutch2.x中的urlfilter

在nutch爬取页面的过程中,页面过滤设置很重要,可以避免爬取一些不必要的页面。这个可以通过设置conf/regex-urlfilter.txt来实现。

但是在实验了几次都无效以后才发现,在runtime/local/conf/下还有一份regex-urlfilter.txt , 真正需要修改的是这个。

注意这个文件的用法:
这个文件中有这样一句话: The first matching pattern in the file determines whether a URL is included or ignored. 意思是第一个匹配的模式决定这个URL是否被丢弃。

因此,这个循环大概是这样
for(rules) :
if url match rules[i] : return accept or ignore

因此,正则表达式的顺序很重要。下面是我想要的bagualu中的页面,


# skip file: ftp: and mailto: urls

-^(file|ftp|mailto):
# skip image and other suffixes we can’t yet parse

# for a more extensive coverage use the urlfilter-suffix plugin

-\.(gif|GIF|jpg|JPG|png|PNG|ico|ICO|css|CSS|sit|SIT|eps|EPS|wmf|WMF|zip|ZIP|ppt|PPT|mpg|MPG|xls|XLS|gz|GZ|rpm|RPM|tgz|TGZ|mov|MOV|exe|EXE|jpeg|JPEG|bmp|BMP|js|JS)$
# skip URLs containing certain characters as probable queries, etc.

-[?*!@=]
-.*android.*

-.*category.*

-.*tag.*
# skip URLs with slash-delimited segment that repeats 3+ times, to break loops

-.*(/[^/]+)/[^/]+\1/[^/]+\1/
# accept anything else

#+.  只对单篇文章感兴趣,其他的不需要爬取

+^http://www.bagualu.net/wordpress/archives/[0-9]+$


本文地址: http://www.bagualu.net/wordpress/archives/4184 转载请注明




发表评论

电子邮件地址不会被公开。 必填项已用*标注