Loading searx/engines/bing_images.py +8 −1 Original line number Diff line number Diff line Loading @@ -21,12 +21,18 @@ import re # engine dependent config categories = ['images'] paging = True safesearch = True # search-url base_url = 'https://www.bing.com/' search_string = 'images/search?{query}&count=10&first={offset}' thumb_url = "http://ts1.mm.bing.net/th?id={ihk}" # safesearch definitions safesearch_types = {2: 'STRICT', 1: 'DEMOTE', 0: 'OFF'} # do search-request def request(query, params): Loading @@ -43,7 +49,8 @@ def request(query, params): offset=offset) params['cookies']['SRCHHPGUSR'] = \ 'NEWWND=0&NRSLT=-1&SRCHLANG=' + language.split('-')[0] 'NEWWND=0&NRSLT=-1&SRCHLANG=' + language.split('-')[0] +\ '&ADLT=' + safesearch_types.get(params['safesearch'], 'DEMOTE') params['url'] = base_url + search_path Loading searx/engines/blekko_images.py +12 −0 Original line number Diff line number Diff line Loading @@ -14,11 +14,17 @@ from urllib import urlencode # engine dependent config categories = ['images'] paging = True safesearch = True # search-url base_url = 'https://blekko.com' search_url = '/api/images?{query}&c={c}' # safesearch definitions safesearch_types = {2: '1', 1: '', 0: '0'} # do search-request def request(query, params): Loading @@ -31,6 +37,12 @@ def request(query, params): if params['pageno'] != 1: params['url'] += '&page={pageno}'.format(pageno=(params['pageno']-1)) # let Blekko know we wan't have profiling params['cookies']['tag_lesslogging'] = '1' # parse safesearch argument params['cookies']['safesearch'] = safesearch_types.get(params['safesearch'], '') return params Loading searx/engines/google_images.py +9 −2 Original line number Diff line number Diff line Loading @@ -15,18 +15,25 @@ from json import loads # engine dependent config categories = ['images'] paging = True safesearch = True # search-url url = 'https://ajax.googleapis.com/' search_url = url + 'ajax/services/search/images?v=1.0&start={offset}&rsz=large&safe=off&filter=off&{query}' search_url = url + 'ajax/services/search/images?v=1.0&start={offset}&rsz=large&safe={safesearch}&filter=off&{query}' # do search-request def request(query, params): offset = (params['pageno'] - 1) * 8 if params['safesearch'] == 0: safesearch = 'off' else: safesearch = 'on' params['url'] = search_url.format(query=urlencode({'q': query}), offset=offset) offset=offset, safesearch=safesearch) return params Loading searx/search.py +5 −0 Original line number Diff line number Diff line Loading @@ -457,6 +457,11 @@ class Search(object): request_params['started'] = time() request_params['pageno'] = self.pageno request_params['language'] = self.lang try: # 0 = None, 1 = Moderate, 2 = Strict request_params['safesearch'] = int(request.cookies.get('safesearch', 1)) except ValueError: request_params['safesearch'] = 1 # update request parameters dependent on # search-engine (contained in engines folder) Loading searx/templates/courgette/preferences.html +10 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,16 @@ </select> </p> </fieldset> <fieldset> <legend>{{ _('SafeSearch') }}</legend> <p> <select name='safesearch'> <option value="2" {% if safesearch == '2' %}selected="selected"{% endif %}>{{ _('Strict') }}</option> <option value="1" {% if safesearch == '1' %}selected="selected"{% endif %}>{{ _('Moderate') }}</option> <option value="0" {% if safesearch == '0' %}selected="selected"{% endif %}>{{ _('None') }}</option> </select> </p> </fieldset> <fieldset> <legend>{{ _('Themes') }}</legend> <p> Loading Loading
searx/engines/bing_images.py +8 −1 Original line number Diff line number Diff line Loading @@ -21,12 +21,18 @@ import re # engine dependent config categories = ['images'] paging = True safesearch = True # search-url base_url = 'https://www.bing.com/' search_string = 'images/search?{query}&count=10&first={offset}' thumb_url = "http://ts1.mm.bing.net/th?id={ihk}" # safesearch definitions safesearch_types = {2: 'STRICT', 1: 'DEMOTE', 0: 'OFF'} # do search-request def request(query, params): Loading @@ -43,7 +49,8 @@ def request(query, params): offset=offset) params['cookies']['SRCHHPGUSR'] = \ 'NEWWND=0&NRSLT=-1&SRCHLANG=' + language.split('-')[0] 'NEWWND=0&NRSLT=-1&SRCHLANG=' + language.split('-')[0] +\ '&ADLT=' + safesearch_types.get(params['safesearch'], 'DEMOTE') params['url'] = base_url + search_path Loading
searx/engines/blekko_images.py +12 −0 Original line number Diff line number Diff line Loading @@ -14,11 +14,17 @@ from urllib import urlencode # engine dependent config categories = ['images'] paging = True safesearch = True # search-url base_url = 'https://blekko.com' search_url = '/api/images?{query}&c={c}' # safesearch definitions safesearch_types = {2: '1', 1: '', 0: '0'} # do search-request def request(query, params): Loading @@ -31,6 +37,12 @@ def request(query, params): if params['pageno'] != 1: params['url'] += '&page={pageno}'.format(pageno=(params['pageno']-1)) # let Blekko know we wan't have profiling params['cookies']['tag_lesslogging'] = '1' # parse safesearch argument params['cookies']['safesearch'] = safesearch_types.get(params['safesearch'], '') return params Loading
searx/engines/google_images.py +9 −2 Original line number Diff line number Diff line Loading @@ -15,18 +15,25 @@ from json import loads # engine dependent config categories = ['images'] paging = True safesearch = True # search-url url = 'https://ajax.googleapis.com/' search_url = url + 'ajax/services/search/images?v=1.0&start={offset}&rsz=large&safe=off&filter=off&{query}' search_url = url + 'ajax/services/search/images?v=1.0&start={offset}&rsz=large&safe={safesearch}&filter=off&{query}' # do search-request def request(query, params): offset = (params['pageno'] - 1) * 8 if params['safesearch'] == 0: safesearch = 'off' else: safesearch = 'on' params['url'] = search_url.format(query=urlencode({'q': query}), offset=offset) offset=offset, safesearch=safesearch) return params Loading
searx/search.py +5 −0 Original line number Diff line number Diff line Loading @@ -457,6 +457,11 @@ class Search(object): request_params['started'] = time() request_params['pageno'] = self.pageno request_params['language'] = self.lang try: # 0 = None, 1 = Moderate, 2 = Strict request_params['safesearch'] = int(request.cookies.get('safesearch', 1)) except ValueError: request_params['safesearch'] = 1 # update request parameters dependent on # search-engine (contained in engines folder) Loading
searx/templates/courgette/preferences.html +10 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,16 @@ </select> </p> </fieldset> <fieldset> <legend>{{ _('SafeSearch') }}</legend> <p> <select name='safesearch'> <option value="2" {% if safesearch == '2' %}selected="selected"{% endif %}>{{ _('Strict') }}</option> <option value="1" {% if safesearch == '1' %}selected="selected"{% endif %}>{{ _('Moderate') }}</option> <option value="0" {% if safesearch == '0' %}selected="selected"{% endif %}>{{ _('None') }}</option> </select> </p> </fieldset> <fieldset> <legend>{{ _('Themes') }}</legend> <p> Loading