このコードを使用して、Google を使用して単語のリストに対してクエリを実行し、Google から多数の検索結果を抽出しています。それはうまくいきましたが、昨夜以来、200回のクエリを実行した後もこのエラーが発生し続けます(Googleが私にフラグを立てたと思います!):スレッド「メイン」での例外java.io.IOException:サーバーがHTTP応答コードを返しました:URLの503:http ://www.google.com/sorry/?continue=http://www.google.com/ ...
「赤」はほんの一例です。
public class Google {
public static void main(String[] args) throws IOException {
String query = "red";
String urlName = "http://www.google.com/search?q=\""+query+"\"";
URL url = new URL(urlName);
URLConnection conn = url.openConnection();
conn.setRequestProperty("User-Agent",
"Mozilla/5.0 (X11; U; Linux x86_64; en-GB; rv:1.8.1.6) Gecko/20070723 Iceweasel/2.0.0.6 (Debian-2.0.0.6-0etch1)");
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
Pattern pattern = Pattern.compile("<div>About (.*?) results</div>"); //<div>About 1,620,000 results</div>
String line;
while ((line = in.readLine()) != null) {
Matcher m = pattern.matcher(line);
if (m.find()) {
System.out.println(m.group(1)); // m.group(1) coresponds to results number: i.e.: 1,620,000
}
}
in.close();
}
}
解決策、提案はありますか?