Java Web スクレイピングの 403 Forbidden エラーを解決する方法
Java を使用して Google 検索結果をスクレイピングすると、「403 Forbidden」が発生する場合がありますWeb ブラウザが予期した結果を返すにもかかわらず、エラーが発生します。これは、Google などの Web サイトが、適切なユーザー エージェントなしでの自動アクセスを防ぐためのスクレイピング対策手段を実装しているためです。
この問題を解決するには、Java プログラムを変更して、ユーザー エージェント ヘッダーを含めて、ブラウザリクエスト。その方法は次のとおりです:
import java.net.HttpURLConnection; import java.net.URL; import java.io.BufferedReader; import java.io.InputStreamReader;
URLConnection connection = new URL("https://www.google.com/search?q=" + query).openConnection();
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11");
connection.connect(); BufferedReader r = new BufferedReader(new InputStreamReader(connection.getInputStream(), Charset.forName("UTF-8")));
この変更により、Java プログラムが正規のブラウザとして表示されるようになり、次のことが可能になります。 403 Forbidden エラーを回避します。ただし、Google はスクレイピング対策対策を常に更新しているため、将来予期しないエラーが発生した場合はコードを調整する必要がある可能性があることに注意してください。
以上がJava で Web スクレイピングを行うと 403 Forbidden エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。