开发者

how to increase the number of pages comes in google search?

I am using google search api But by default it shows 4 and maximum 8 results per pag开发者_运维问答e. I want more results per page.


Add the rsz=8 parameter to this google search demonstration code, then use the start=... parameter to control which group of results you receive.

This, for example, gives you 50 results:

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)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜