как увеличить количество страниц в поиске гугл? - PullRequest
1 голос
/ 02 сентября 2010

Я использую Google Search API Но по умолчанию он показывает 4 и максимум 8 результатов на страницу. Я хочу больше результатов на странице.

1 Ответ

0 голосов
/ 02 сентября 2010

Добавьте параметр rsz=8 к этому коду демонстрации поиска Google , а затем используйте параметр start=..., чтобы указать, какую группу результатов вы получите.

Это, например, даетвам 50 результатов:

import urllib
import json
import sys
import itertools

def hits(astr):
    for start in itertools.count():
        query = urllib.urlencode({'q':astr, 'rsz': 8, 'start': start*8})
        url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s'%(query)
        search_results = urllib.urlopen(url)
        results = json.loads(search_results.read())
        data = results['responseData']
        if data:
            hits = data['results']
            for h in hits:
                yield h['url']
        else:
            raise StopIteration


def showmore(astr,num):
    for i,h in enumerate(itertools.islice(hits(astr),num)):
        print('{i}: {h}'.format(i=i,h=h))

if __name__=='__main__':
    showmore(sys.argv[1],50)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...