diff options
author | asciimoo <asciimoo@gmail.com> | 2014-01-29 19:28:38 +0100 |
---|---|---|
committer | asciimoo <asciimoo@gmail.com> | 2014-01-29 19:28:38 +0100 |
commit | 3207a396bdd8c5f3753394ff34764e10cbfe4820 (patch) | |
tree | bb83b7389f464b9a9e182687dca4cd3f35f8b085 /searx/engines/google.py | |
parent | f341ddd5be92a7539ea84cf2ee956e41ff7a2b78 (diff) | |
download | searxng-3207a396bdd8c5f3753394ff34764e10cbfe4820.tar.gz searxng-3207a396bdd8c5f3753394ff34764e10cbfe4820.zip |
[enh] google engine added
Diffstat (limited to 'searx/engines/google.py')
-rw-r--r-- | searx/engines/google.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/searx/engines/google.py b/searx/engines/google.py new file mode 100644 index 000000000..c9253c9bf --- /dev/null +++ b/searx/engines/google.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python + +from urllib import urlencode +from json import loads + +categories = ['general'] + +url = 'https://ajax.googleapis.com/' +search_url = url + 'ajax/services/search/web?v=1.0&start=0&rsz=large&safe=off&filter=off&{query}' # noqa + + +def request(query, params): + params['url'] = search_url.format(query=urlencode({'q': query})) + return params + + +def response(resp): + results = [] + search_res = loads(resp.text) + + if not search_res.get('responseData', {}).get('results'): + return [] + + for result in search_res['responseData']['results']: + results.append({'url': result['unescapedUrl'], + 'title': result['titleNoFormatting'], + 'content': result['content']}) + return results |