我已经安装了用于网络爬取的 apache nutch。我想抓取具有以下内容的网站robots.txt
:
User-Agent: *
Disallow: /
有没有办法用 apache nutch 抓取这个网站?
我已经安装了用于网络爬取的 apache nutch。我想抓取具有以下内容的网站robots.txt
:
User-Agent: *
Disallow: /
有没有办法用 apache nutch 抓取这个网站?
您可以在 nutch-site.xml 中将属性“Protocol.CHECK_ROBOTS”设置为 false 以忽略 robots.txt。
在 nutch-site.xml 中,将 protocol.plugin.check.robots 设置为 false
或者
您可以注释掉机器人检查完成的代码。在 Fetcher.java 中,第 605-614 行正在进行检查。评论整个区块
if (!rules.isAllowed(fit.u)) {
// unblock
fetchQueues.finishFetchItem(fit, true);
if (LOG.isDebugEnabled()) {
LOG.debug("Denied by robots.txt: " + fit.url);
}
output(fit.url, fit.datum, null, ProtocolStatus.STATUS_ROBOTS_DENIED, CrawlDatum.STATUS_FETCH_GONE);
reporter.incrCounter("FetcherStatus", "robots_denied", 1);
continue;
}