diff options
| author | Adam Tauber <asciimoo@gmail.com> | 2014-09-01 18:30:55 +0200 |
|---|---|---|
| committer | Adam Tauber <asciimoo@gmail.com> | 2014-09-01 18:30:55 +0200 |
| commit | f36d1e28fae212b8b8640324d2e787b73305e2d2 (patch) | |
| tree | 3ea188d416f972d1f7f1f4db7e218d5b491f93f8 /searx/engines/google_images.py | |
| parent | 55dfb305a0057b8e94706ae152bb61d07772f334 (diff) | |
| parent | 58a443be29e9fda5273af5118d72ff512ecb9e08 (diff) | |
Merge pull request #88 from pointhi/engines
update and fix search engines
Diffstat (limited to 'searx/engines/google_images.py')
| -rw-r--r-- | searx/engines/google_images.py | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/searx/engines/google_images.py b/searx/engines/google_images.py index e810ee07d..6c99f2801 100644 --- a/searx/engines/google_images.py +++ b/searx/engines/google_images.py @@ -1,37 +1,58 @@ -#!/usr/bin/env python +## Google (Images) +# +# @website https://www.google.com +# @provide-api yes (https://developers.google.com/web-search/docs/), deprecated! +# +# @using-api yes +# @results JSON +# @stable yes (but deprecated) +# @parse url, title, img_src from urllib import urlencode from json import loads +# engine dependent config categories = ['images'] +paging = True +# search-url url = 'https://ajax.googleapis.com/' search_url = url + 'ajax/services/search/images?v=1.0&start={offset}&rsz=large&safe=off&filter=off&{query}' # noqa -paging = True +# do search-request def request(query, params): offset = (params['pageno'] - 1) * 8 + params['url'] = search_url.format(query=urlencode({'q': query}), offset=offset) + return params +# get response from search-request def response(resp): results = [] + search_res = loads(resp.text) - if not search_res.get('responseData'): - return [] - if not search_res['responseData'].get('results'): + + # return empty array if there are no results + if not search_res.get('responseData', {}).get('results'): return [] + + # parse results for result in search_res['responseData']['results']: href = result['originalContextUrl'] title = result['title'] if not result['url']: continue + + # append result results.append({'url': href, 'title': title, 'content': '', 'img_src': result['url'], 'template': 'images.html'}) + + # return results return results |