[enh] autocompletion : add qwant

This commit is contained in:
Alexandre Flament 2016-03-02 19:54:06 +08:00
parent bc81eda64b
commit 6ab91515df

View file

@ -161,6 +161,23 @@ def startpage(query):
return [] return []
def qwant(query):
# qwant autocompleter (additional parameter : lang=en_en&count=xxx )
url = 'https://api.qwant.com/api/suggest?{query}'
resp = get(url.format(query=urlencode({'q': query})))
results = []
if resp.ok:
data = loads(resp.text)
if data['status'] == 'success':
for item in data['data']['items']:
results.append(item['value'])
return results
def wikipedia(query): def wikipedia(query):
# wikipedia autocompleter # wikipedia autocompleter
url = 'https://en.wikipedia.org/w/api.php?action=opensearch&{0}&limit=10&namespace=0&format=json' url = 'https://en.wikipedia.org/w/api.php?action=opensearch&{0}&limit=10&namespace=0&format=json'
@ -175,5 +192,6 @@ backends = {'dbpedia': dbpedia,
'duckduckgo': duckduckgo, 'duckduckgo': duckduckgo,
'google': google, 'google': google,
'startpage': startpage, 'startpage': startpage,
'qwant': qwant,
'wikipedia': wikipedia 'wikipedia': wikipedia
} }