google.py 880 B

1234567891011121314151617181920212223242526272829303132
  1. #!/usr/bin/env python
  2. from urllib import urlencode
  3. from json import loads
  4. categories = ['general']
  5. paging = True
  6. url = 'https://ajax.googleapis.com/'
  7. search_url = url + 'ajax/services/search/web?v=1.0&start={offset}&rsz=large&safe=off&filter=off&{query}' # noqa
  8. def request(query, params):
  9. offset = (params['pageno'] - 1) * 8
  10. params['url'] = search_url.format(offset=offset,
  11. query=urlencode({'q': query}))
  12. return params
  13. def response(resp):
  14. results = []
  15. search_res = loads(resp.text)
  16. if not search_res.get('responseData', {}).get('results'):
  17. return []
  18. for result in search_res['responseData']['results']:
  19. results.append({'url': result['unescapedUrl'],
  20. 'title': result['titleNoFormatting'],
  21. 'content': result['content']})
  22. return results