google_images.py 1.1 KB

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