【发布时间】:2025-12-15 08:45:02
【问题描述】:
我需要对网站进行爬网以定期检查网址是否可用。为此,我使用 crawler4j。
我的问题来自一些使用<meta name="robots" content="noindex,nofollow" /> 禁用机器人的网页,由于它拥有的内容,因此不应该在搜索引擎中索引这些网页是有意义的。
尽管禁用了 RobotServer 的配置,crawler4j 也没有关注这些链接。使用robotstxtConfig.setEnabled(false);,这一定很容易:
RobotstxtConfig robotstxtConfig = new RobotstxtConfig();
robotstxtConfig.setUserAgentName(USER_AGENT_NAME);
robotstxtConfig.setEnabled(false);
RobotstxtServer robotstxtServer = new RobotstxtServer(robotstxtConfig, pageFetcher);
WebCrawlerController controller = new WebCrawlerController(config, pageFetcher, robotstxtServer);
...
但所描述的网页仍未探索。我已经阅读了代码,这必须足以禁用机器人指令,但它没有按预期工作。也许我跳过了什么?我已经用3.5 和3.6-SNAPSHOT 版本对其进行了测试,结果相同。
【问题讨论】:
标签: crawler4j