Web crawler 风暴爬虫&x27;s default-regex-filters.txt
我已经处理这个问题有一段时间了,还没有弄清楚StormCrawler的default-regex-filters.txt文件是如何工作的 在一个例子中,我需要将爬虫程序限制为只爬网该站点下的项目,而不爬网该站点上的任何其他目录。我把规则Web crawler 风暴爬虫&x27;s default-regex-filters.txt,web-crawler,stormcrawler,Web Crawler,Stormcrawler,我已经处理这个问题有一段时间了,还没有弄清楚StormCrawler的default-regex-filters.txt文件是如何工作的 在一个例子中,我需要将爬虫程序限制为只爬网该站点下的项目,而不爬网该站点上的任何其他目录。我把规则 +.*\/dev\/.* 进入default-regex-filters.txt的最后一行,但它似乎不起作用。我认为标准的正则表达式规则适用,但事实似乎并非如此。上面的一个示例之前有/没有\并且它正在工作?我对此感到相当困惑,不知道该文件中是否有regex的备
+.*\/dev\/.*
进入default-regex-filters.txt的最后一行,但它似乎不起作用。我认为标准的正则表达式规则适用,但事实似乎并非如此。上面的一个示例之前有/没有\并且它正在工作?我对此感到相当困惑,不知道该文件中是否有regex的备忘单,以便我可以更轻松地构建这些文件
接下来,文件中是否也只能有一个+筛选器?我模模糊糊地记得读过,但我想确定一下。您可以在文件中设置任意多个+过滤器 过滤的逻辑很简单
public String filter(URL pageUrl, Metadata sourceMetadata, String url) {
for (RegexRule rule : rules) {
if (rule.match(url)) {
return rule.accept() ? url : null;
}
}
return null;
}
其中,accept表示该模式具有+。如果没有匹配的URL,则会对其进行筛选
是你走了吗
# accept anything else
+.
在你添加的表达式上方
您可能想看看,这可能更直观