请教 nutch 抓取动态链接的问题
我要抓的连接是这个
http://192.168.6.92:8080/DCMS/userInfo/userInfo.do?method=displayManagerLogin&shopName=centerManagerSource
我url规则是
+^http://192.168.6.92:8080/DCMS/[\s\S]* 我看网上说[\s\S]*代表任意字符
可它老抓到 http://192.168.6.92:8080/DCMS/userInfo/userInfo.do 后边的就没有了,这是怎么回事?是不认问号吗?
[解决办法]
+^http://192.168.6.92:8080/DCMS 不是更方便
[解决办法]
默认是跳过?的,修改一下需要注意在conf下面的2个文件:regex-urlfilter.txt,crawl-urlfilter.txt
# skip URLs containing certain characters as probable queries, etc.
-[?*!@=] (-改+)
这段意思是跳过在连接中存在? * ! @ = 的页面,因为默认是跳过所以,在动态页中存在?一般按照默认的是不能抓取到的。可以在上面2个文件中都修改成:# skip URLs containing certain characters as probable queries, etc. # -[?*!@=]
另外增加允许的一行
# accept URLs containing certain characters as probable queries, etc. +[?=&]
意思是抓取时候允许抓取连接中带 ? = & 这三个符号的连接
注意:两个文件都需要修改,因为NUTCH加载规则的顺序是crawl-urlfilter.txt-> regex-urlfilter.txt
http://blog.csdn.net/jimanyu/archive/2010/05/24/5619949.aspx