diff options
| author | Markus Heiser <markus.heiser@darmarIT.de> | 2020-01-28 10:59:03 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-01-28 10:59:03 +0000 |
| commit | e64ff38217a1ba49afd4bb1c595121d94cbb2e33 (patch) | |
| tree | d8461b0392143da9d8ec9ae598b8a12c50914104 /searx/engines/wikipedia.py | |
| parent | 0e7b6c9a032d67bf5cbdcfc062d8466c18a62abd (diff) | |
| parent | bda189565589b0065152f5a9fba4565404f9bd9a (diff) | |
Merge branch 'master' into fix-infinite-scroll
Diffstat (limited to 'searx/engines/wikipedia.py')
| -rw-r--r-- | searx/engines/wikipedia.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/searx/engines/wikipedia.py b/searx/engines/wikipedia.py index 4dae735d1..a216ba886 100644 --- a/searx/engines/wikipedia.py +++ b/searx/engines/wikipedia.py @@ -21,7 +21,8 @@ search_url = base_url + u'w/api.php?'\ 'action=query'\ '&format=json'\ '&{query}'\ - '&prop=extracts|pageimages'\ + '&prop=extracts|pageimages|pageprops'\ + '&ppprop=disambiguation'\ '&exintro'\ '&explaintext'\ '&pithumbsize=300'\ @@ -79,12 +80,15 @@ def response(resp): # wikipedia article's unique id # first valid id is assumed to be the requested article + if 'pages' not in search_result['query']: + return results + for article_id in search_result['query']['pages']: page = search_result['query']['pages'][article_id] if int(article_id) > 0: break - if int(article_id) < 0: + if int(article_id) < 0 or 'disambiguation' in page.get('pageprops', {}): return [] title = page.get('title') @@ -96,6 +100,7 @@ def response(resp): extract = page.get('extract') summary = extract_first_paragraph(extract, title, image) + summary = summary.replace('() ', '') # link to wikipedia article wikipedia_link = base_url.format(language=url_lang(resp.search_params['language'])) \ |