google api搜索java代码超过4个结果

时间:2013-05-01 21:54:37

标签: java api search

我必须做一个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个以上的结果?

1 个答案:

答案 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());
    }