我有一个问题,我尝试在我已经爬过的东西上发出新的爬网,但是有一些新的 URL。
所以首先我有
urls/urls.txt -> www.somewebsite.com
然后我发出命令
bin/nutch crawl urls -dir crawl -depth 60 -threads 50
然后我更新 urls/urls.txt -> 删除 www.somewebsite.com -> 添加 www.anotherwebsite.com
我发出命令
bin/nutch inject crawl urls
bin/nutch crawl urls -dir crawl -depth 60 -threads 50
我在这里期望的是,www.anotherwebsite.com 被注入到现有的“抓取”数据库中,当再次发出抓取时,它应该只抓取我添加的新网站 www.anotherwebsite.com(作为原始网站的重新获取)设置为 30 天)
我的经历是
1.) 没有网站被抓取
2.) 只抓取原网站
“有时”如果我将它放置几个小时,它就会开始工作并获取新网站并同时抓取旧网站和新网站(即使重新获取时间设置为 30 天)
它非常奇怪和不可预测的行为。
我很确定我的 regex-urlfilter 文件设置正确,并且我的 nutch-site / nutch-default 全部设置为默认值(足够接近)。
问题:
任何人都可以简单地(使用命令)解释每次爬网期间发生了什么,以及如何使用一些新的 url 更新现有的爬网数据库?
谁能解释(用命令)我如何强制在爬网数据库中重新抓取“所有”网址?- 我已经发布了一个 readdb 并检查了重新获取时间,大多数设置为一个月,但是如果我想尽快重新获取呢?