gpt4 book ai didi

java - 来自 Java 的谷歌查询

转载 作者:行者123 更新时间:2023-11-30 06:30:59 24 4
gpt4 key购买 nike

我正在使用此代码使用 google 查询单词列表并从 google 中提取搜索结果的数量。它工作正常,但自昨晚以来,它在进行 200 次查询后一直给我这个错误(我猜谷歌标记了我!):线程“main”中的异常 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();
}

有什么解决办法,建议吗?

最佳答案

您已被标记为机器人,可能是由于您查询的频率。尝试从不同的 IP 运行它(在那个 IP 被标记为机器人之前)。

无论如何,您应该使用 Google 搜索 API。来自网站 https://developers.google.com/custom-search/v1/overview :

定价

免费配额

所有用户均可免费使用,每天最多查询 100 次。

付费使用

如果您未注册计费,超出免费使用配额的任何使用都将失败。启用计费后,您每天将继续收到 100 个免费查询。但是,您将按每 1000 次查询 5 美元的费率为所有额外请求付费,每天最多 10,000 次查询。如果您需要额外的配额,请从控制台申请额外的配额。

关于java - 来自 Java 的谷歌查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10019077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com