0

在我的应用程序中,我使用 crawler4j。虽然应用程序很大,但我什至用这里给出的示例代码测试了代码:https ://code.google.com/p/crawler4j/source/browse/src/test/java/edu/uci/ics/crawler4j/examples /基本的/

问题是,它适用于大多数网站,但是当我将种子 url 添加为:http://indianexpress.com/时,爬虫停止,而我的 eclipse 上没有任何错误消息。我尝试了几次,但它不起作用。我尝试在 shouldVisit 方法中打印 url 和示例文本,如“hello”,但没有打印意味着它甚至没有到达那里。可能是什么问题 ?

编辑 :

我只是想, crawler4j 不适用于任何 wordpress 网站。例如,http://darcyconroy.net/或者您可以查看http://indianexpress.com/next(将 /next 添加到任何 wordpress 站点 url)。可能是什么原因 ?http://indianexpress.com/robots.txt似乎没有写任何可疑的东西。

4

1 回答 1

1

我认为,wordpress 网站有一些插件可以过滤用户代理,而不仅仅是 robots.txt。

我可以说爬行被服务器阻止了。

启用记录器输出。

BasicConfigurator.configure();

将记录器设置为警告级别。

Logger.getRootLogger().setLevel(Level.WARN);

使用以下代码将 UserAgent 字符串更改为空,它会抓取数据。

config.setUserAgentString("");

所以我认为它与 crawler4j 无关。Crawler4j 设置默认的 Useragent 字符串,我认为它被阻止或它的 useragent 字符串被此类插件列入黑名单。

于 2014-05-08T11:33:25.143 回答