浏览代码

[fix] time range detection

Adam Tauber 8 年前
父节点
当前提交
350a84520d

+ 1
- 2
searx/engines/deviantart.py 查看文件

@@ -13,7 +13,6 @@
13 13
 """
14 14
 
15 15
 from urllib import urlencode
16
-from urlparse import urljoin
17 16
 from lxml import html
18 17
 import re
19 18
 from searx.engines.xpath import extract_text
@@ -39,7 +38,7 @@ def request(query, params):
39 38
 
40 39
     params['url'] = search_url.format(offset=offset,
41 40
                                       query=urlencode({'q': query}))
42
-    if params['time_range']:
41
+    if params['time_range'] in time_range_dict:
43 42
         params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
44 43
 
45 44
     return params

+ 1
- 1
searx/engines/duckduckgo.py 查看文件

@@ -67,7 +67,7 @@ def request(query, params):
67 67
         params['url'] = url.format(
68 68
             query=urlencode({'q': query}), offset=offset)
69 69
 
70
-    if params['time_range']:
70
+    if params['time_range'] in time_range_dict:
71 71
         params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
72 72
 
73 73
     return params

+ 1
- 1
searx/engines/google.py 查看文件

@@ -185,7 +185,7 @@ def request(query, params):
185 185
                                       query=urlencode({'q': query}),
186 186
                                       hostname=google_hostname,
187 187
                                       lang=url_lang)
188
-    if params['time_range']:
188
+    if params['time_range'] in time_range_dict:
189 189
         params['url'] += time_range_search.format(range=time_range_dict[params['time_range']])
190 190
 
191 191
     params['headers']['Accept-Language'] = language

+ 1
- 2
searx/engines/google_images.py 查看文件

@@ -11,7 +11,6 @@
11 11
 """
12 12
 
13 13
 from urllib import urlencode
14
-from urlparse import parse_qs
15 14
 from json import loads
16 15
 from lxml import html
17 16
 
@@ -39,7 +38,7 @@ def request(query, params):
39 38
     params['url'] = search_url.format(query=urlencode({'q': query}),
40 39
                                       offset=offset,
41 40
                                       safesearch=safesearch)
42
-    if params['time_range']:
41
+    if params['time_range'] in time_range_dict:
43 42
         params['url'] += time_range_search.format(range=time_range_dict[params['time_range']])
44 43
 
45 44
     if safesearch and params['safesearch']:

+ 1
- 1
searx/engines/yahoo.py 查看文件

@@ -58,7 +58,7 @@ def parse_url(url_string):
58 58
 
59 59
 
60 60
 def _get_url(query, offset, language, time_range):
61
-    if time_range:
61
+    if time_range in time_range_dict:
62 62
         return base_url + search_url_with_time.format(offset=offset,
63 63
                                                       query=urlencode({'p': query}),
64 64
                                                       lang=language,

+ 1
- 0
tests/unit/engines/test_deviantart.py 查看文件

@@ -10,6 +10,7 @@ class TestDeviantartEngine(SearxTestCase):
10 10
         query = 'test_query'
11 11
         dicto = defaultdict(dict)
12 12
         dicto['pageno'] = 0
13
+        dicto['time_range'] = ''
13 14
         params = deviantart.request(query, dicto)
14 15
         self.assertTrue('url' in params)
15 16
         self.assertTrue(query in params['url'])

+ 1
- 0
tests/unit/engines/test_duckduckgo.py 查看文件

@@ -12,6 +12,7 @@ class TestDuckduckgoEngine(SearxTestCase):
12 12
         dicto = defaultdict(dict)
13 13
         dicto['pageno'] = 1
14 14
         dicto['language'] = 'de_CH'
15
+        dicto['time_range'] = ''
15 16
         params = duckduckgo.request(query, dicto)
16 17
         self.assertIn('url', params)
17 18
         self.assertIn(query, params['url'])

+ 1
- 0
tests/unit/engines/test_google.py 查看文件

@@ -19,6 +19,7 @@ class TestGoogleEngine(SearxTestCase):
19 19
         dicto = defaultdict(dict)
20 20
         dicto['pageno'] = 1
21 21
         dicto['language'] = 'fr_FR'
22
+        dicto['time_range'] = ''
22 23
         params = google.request(query, dicto)
23 24
         self.assertIn('url', params)
24 25
         self.assertIn(query, params['url'])

+ 1
- 0
tests/unit/engines/test_google_images.py 查看文件

@@ -11,6 +11,7 @@ class TestGoogleImagesEngine(SearxTestCase):
11 11
         dicto = defaultdict(dict)
12 12
         dicto['pageno'] = 1
13 13
         dicto['safesearch'] = 1
14
+        dicto['time_range'] = ''
14 15
         params = google_images.request(query, dicto)
15 16
         self.assertIn('url', params)
16 17
         self.assertIn(query, params['url'])

+ 1
- 0
tests/unit/engines/test_yahoo.py 查看文件

@@ -28,6 +28,7 @@ class TestYahooEngine(SearxTestCase):
28 28
         query = 'test_query'
29 29
         dicto = defaultdict(dict)
30 30
         dicto['pageno'] = 1
31
+        dicto['time_range'] = ''
31 32
         dicto['language'] = 'fr_FR'
32 33
         params = yahoo.request(query, dicto)
33 34
         self.assertIn('url', params)