summaryrefslogtreecommitdiff
path: root/searx/engines
diff options
context:
space:
mode:
authorNoémi Ványi <sitbackandwait@gmail.com>2016-12-11 16:41:14 +0100
committerNoémi Ványi <sitbackandwait@gmail.com>2016-12-11 16:58:31 +0100
commitb034356825420507c9fb7ee2dc100676a88cf6c7 (patch)
tree82f90b1e406ffda0276d2918b1b86c3589e50012 /searx/engines
parentc59c76e6ee14f0417ad55ecf0f888f62f34f1f6d (diff)
downloadsearxng-b034356825420507c9fb7ee2dc100676a88cf6c7.tar.gz
searxng-b034356825420507c9fb7ee2dc100676a88cf6c7.zip
add year filter to engines with time range support && tests
Following engines does not support "Last year": * Bing News * DeviantArt * DuckDuckGo * Yahoo * YouTube (noapi)
Diffstat (limited to 'searx/engines')
-rw-r--r--searx/engines/bing_news.py3
-rw-r--r--searx/engines/deviantart.py3
-rw-r--r--searx/engines/duckduckgo.py3
-rw-r--r--searx/engines/yahoo.py3
-rw-r--r--searx/engines/youtube_noapi.py3
5 files changed, 14 insertions, 1 deletions
diff --git a/searx/engines/bing_news.py b/searx/engines/bing_news.py
index 906afe662..4e7c33129 100644
--- a/searx/engines/bing_news.py
+++ b/searx/engines/bing_news.py
@@ -66,6 +66,9 @@ def _get_url(query, language, offset, time_range):
# do search-request
def request(query, params):
+ if params['time_range'] and params['time_range'] not in time_range_dict:
+ return params
+
offset = (params['pageno'] - 1) * 10 + 1
if params['language'] == 'all':
diff --git a/searx/engines/deviantart.py b/searx/engines/deviantart.py
index d893fc7fe..a24b75b8a 100644
--- a/searx/engines/deviantart.py
+++ b/searx/engines/deviantart.py
@@ -34,6 +34,9 @@ time_range_dict = {'day': 11,
# do search-request
def request(query, params):
+ if params['time_range'] and params['time_range'] not in time_range_dict:
+ return params
+
offset = (params['pageno'] - 1) * 24
params['url'] = search_url.format(offset=offset,
diff --git a/searx/engines/duckduckgo.py b/searx/engines/duckduckgo.py
index 2153492e9..9959a52e6 100644
--- a/searx/engines/duckduckgo.py
+++ b/searx/engines/duckduckgo.py
@@ -41,6 +41,9 @@ content_xpath = './/a[@class="result__snippet"]'
# do search-request
def request(query, params):
+ if params['time_range'] and params['time_range'] not in time_range_dict:
+ return params
+
offset = (params['pageno'] - 1) * 30
if params['language'] == 'all':
diff --git a/searx/engines/yahoo.py b/searx/engines/yahoo.py
index 8e24a283e..2bb34b83d 100644
--- a/searx/engines/yahoo.py
+++ b/searx/engines/yahoo.py
@@ -77,6 +77,9 @@ def _get_language(params):
# do search-request
def request(query, params):
+ if params['time_range'] and params['time_range'] not in time_range_dict:
+ return params
+
offset = (params['pageno'] - 1) * 10 + 1
language = _get_language(params)
diff --git a/searx/engines/youtube_noapi.py b/searx/engines/youtube_noapi.py
index b33594465..9b7ca64c8 100644
--- a/searx/engines/youtube_noapi.py
+++ b/searx/engines/youtube_noapi.py
@@ -25,7 +25,8 @@ search_url = base_url + '?search_query={query}&page={page}'
time_range_url = '&sp=EgII{time_range}%253D%253D'
time_range_dict = {'day': 'Ag',
'week': 'Aw',
- 'month': 'BA'}
+ 'month': 'BA',
+ 'year': 'BQ'}
embedded_url = '<iframe width="540" height="304" ' +\
'data-src="//www.youtube-nocookie.com/embed/{videoid}" ' +\