我必须做一个java项目
其中使用Google API进行搜索结果。
我找到了这个链接:http://www.programcreek.com/2012/05/call-google-search-api-in-java-program/但是这个程序只返回4个链接,我需要更多。
在本文的最后,他们说:“这不是一个错误,它的设计就是这样。我们可以做的是在url”start =#“中添加一个参数。如果这个数字是4 ,我们有5-8个结果,如果数字是100,我们有101-104个结果,依此类推。“
我不明白如何修改代码,这样可以返回4个以上的结果?
答案 0 :(得分:1)
经过进一步研究,您只需一次通话即可获得超过4个结果。您必须在URL中设置start
参数并多次查询。
Google AJAX API - How do I get more than 4 Results?
看,这很简单,只需这样做(使用链接代码):
public static void main(String[] args) throws IOException {
List<Result> listResults = new ArrayList<Result>();
for(int i = 0; i < 10; i++) {
String address = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&start=" + i * 4 + "&q=";
String query = "java tutorial";
String charset = "UTF-8";
URL url = new URL(address + URLEncoder.encode(query, charset));
Reader reader = new InputStreamReader(url.openStream(), charset);
GoogleResults results = new Gson().fromJson(reader, GoogleResults.class);
listResults.addAll(results.getResponseData.getResults());
}