3

多くの実験とグーグルの後、次のPythonコードはGoogleのSearch APiを正常に呼び出しますが、4つの結果しか返しません:Google Search APIドキュメントを読んだ後、「start =」は追加の結果を返すと思いました:しかし、これは起こりません。

誰かがポインタを与えることができますか?ありがとう。

Pythonコード:

/usr/bin/python
import urllib
import simplejson

query = urllib.urlencode({'q' : 'site:example.com'})
url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s&start=50' \
  % (query)
search_results = urllib.urlopen(url)
json = simplejson.loads(search_results.read())
results = json['responseData']['results']
for i in results:
  print i['title'] + ": " + i['url']
4

1 に答える 1

2

開始オプションは、より多くの結果を提供するのではなく、それだけ多くの結果を先に進めるだけです。結果をキューと考えてください。50 から開始すると、結果は 50、51、52、および 53 になります。

これにより、4 番目の結果ごとに開始することで、より多くの結果を得ることができます。

import urllib
import simplejson

num_queries = 50*4 
query = urllib.urlencode({'q' : 'example'})
url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s' % query

for start in range(0, num_queries, 4):
    request_url = '{0}&start={1}'.format(url, start)
    search_results = urllib.urlopen(request_url)
    json = simplejson.loads(search_results.read())
    results = json['responseData']['results']
    for i in results:
        print i['title'] + ": " + i['url']
于 2011-01-06T04:51:10.133 に答える