GETリクエスト内で送信されたCookieに依存するリンクを取得する必要があります。 したがって、私はcrawler4jでページをクロールしたいとき、正しいページを戻すためにいくつかのクッキーを送る必要があります。リクエストに応じてクッキーをcrawler4jで送信しますか?
これは可能ですか(ウェブを検索しましたが、何か有用なものが見つかりませんでした)。または、これを実行できるJavaクローラがありますか?
助けてください。
GETリクエスト内で送信されたCookieに依存するリンクを取得する必要があります。 したがって、私はcrawler4jでページをクロールしたいとき、正しいページを戻すためにいくつかのクッキーを送る必要があります。リクエストに応じてクッキーをcrawler4jで送信しますか?
これは可能ですか(ウェブを検索しましたが、何か有用なものが見つかりませんでした)。または、これを実行できるJavaクローラがありますか?
助けてください。
それはそのcrawler4jがクッキーをサポートしていない可能性があります表示されます。http://www.webuseragents.com/ua/427106/crawler4j-http-code-google-com-p-crawler4j-
いくつかの選択肢があります。
私はNutchのとHeritrixは最高のものであることを言うだろうと私は上の特別な重点を置きますNutchはおそらくスケールアップして実際に大きなクロールを実行するように設計された唯一のクローラです。
このスレッドに遅れていますが、実際にはcrawler4jはクッキーを処理するうえで優れています。基になるHTTPクライアント(Apache)を保持できるので、Cookieの値を調べることさえできます。たとえば:
@Override
public void visit(Page page) {
super.visit(page);
DefaultHttpClient httpClient = (DefaultHttpClient) getMyController().getPageFetcher().getHttpClient();
for (Cookie cookie : httpClient.getCookieStore().getCookies()) {
if (cookie.getName().equals("somename")) {
String value = cookie.getValue();
}
}
}
私は(私はそのセッションクッキーが多数にわたる私のサイト上で維持されてテストしていたのNutchで簡単に見えたが(Mavenの依存関係を使用して5分)を統合するために単純crawler4jようで、私のニーズに完璧でしたのリクエスト)。
私は疑問を持っています! 1)この部分を説明できますか? if(cookie.getName()。equals( "somename")){ String value = cookie.getValue(); } どこにCookieを挿入すればよいですか? –
ありがとうございました。私はそれを見てみましょう。 –