0

私のアプリケーションでは、crawler4j を使用しています。アプリケーションは大きいですが、ここにあるサンプルコードでコードをテストしました: https://code.google.com/p/crawler4j/source/browse/src/test/java/edu/uci/ics/crawler4j/examples /基本/

問題は、ほとんどのサイトで機能することですが、シード URL をhttp://indianexpress.com/として追加すると、Eclipse でエラー メッセージが表示されずにクローラーが停止します。何度か試しましたが、うまくいきません。shouldVisitメソッドで「hello」などのURLとサンプルテキストを出力してみましたが、何も出力されず、そこにも届いていません。問題は何ですか?

編集 :

私は、クローラー4jはどのワードプレスサイトでも機能していないと考えました。たとえば、http://darcyconroy.net/またはhttp://indianexpress.com/nextを確認できます(wordpress サイトの URL に /next を追加します) 。何が原因でしょうか? http://indianexpress.com/robots.txtには怪しいことは書かれていないようです。

4

1 に答える 1

1

wordpress サイトには、robots.txt 以外のユーザーエージェントをフィルタリングするためのプラグインがいくつかあると思います。

クロールがサーバーによってブロックされていると言えます。

ロガー出力を有効にします。

BasicConfigurator.configure();

ロガーを WARN レベルに設定します。

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

以下のコードで UserAgent 文字列を空に変更すると、データがクロールされます。

config.setUserAgentString("");

だから私はクローラー4jとは何の関係もないと思います。Crawler4j はデフォルトの Useragent 文字列を設定しますが、これはブロックされていると思われるか、そのようなプラグインによってその useragent 文字列がブラックリストに登録されています。

于 2014-05-08T11:33:25.143 に答える