瀏覽代碼

[fix] restrict wikipedia queries to the titles to avoid irrelevant results

Adam Tauber 9 年之前
父節點
當前提交
b5061b5f0f
共有 1 個檔案被更改,包括 4 行新增2 行删除
  1. 4
    2
      searx/engines/mediawiki.py

+ 4
- 2
searx/engines/mediawiki.py 查看文件

27
 search_postfix = 'w/api.php?action=query'\
27
 search_postfix = 'w/api.php?action=query'\
28
     '&list=search'\
28
     '&list=search'\
29
     '&{query}'\
29
     '&{query}'\
30
-    '&srprop=timestamp'\
31
     '&format=json'\
30
     '&format=json'\
32
     '&sroffset={offset}'\
31
     '&sroffset={offset}'\
33
-    '&srlimit={limit}'
32
+    '&srlimit={limit}'\
33
+    '&srwhat=nearmatch'  # search for a near match in the title
34
 
34
 
35
 
35
 
36
 # do search-request
36
 # do search-request
74
 
74
 
75
     # parse results
75
     # parse results
76
     for result in search_results['query']['search']:
76
     for result in search_results['query']['search']:
77
+        if result.get('snippet', '').startswith('#REDIRECT'):
78
+            continue
77
         url = base_url.format(language=resp.search_params['language']) +\
79
         url = base_url.format(language=resp.search_params['language']) +\
78
             'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8'))
80
             'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8'))
79
 
81