on master help sign in
Merge branch 'master' into wolframalpha
commit84cd09ac34bb06bc9a4a2ad702fb29346823e0c8 authora01200356 <a01200356@itesm.mx> dateSun 27 Dec 2015, 22:01 (11 years ago) parentb3fde1991c850c
5 files changed+56−10
AUTHORS.rst+3 CHANGELOG.rst+21 searx/engines/gigablast.py+30−9 searx/tests/engines/test_gigablast.py+1 searx/version.py+1−1
AUTHORS.rst+3
@@ -38,3 +38,6 @@ generally made searx better:
3838- Niklas Haas
3939- @underr
4040- Emmanuel Benazera
41+- @GreenLunar
42+- Noemi Vanyi
43+- Kang-min Liu
CHANGELOG.rst+21
@@ -1,3 +1,23 @@
1+0.8.1 2015.12.22
2+================
3+
4+- More efficient result parsing
5+- Rewritten google engine to prevent app crashes
6+- Other engine fixes/tweaks
7+
8+ - Bing news
9+ - Btdigg
10+ - Gigablast
11+ - Google images
12+ - Startpage
13+
14+
15+News
16+~~~~
17+
18+New documentation page is available: https://asciimoo.github.io/searx
19+
20+
1210.8.0 2015.09.08
222================
323
@@ -44,6 +64,7 @@ News
4464
4565@dalf joined the maintainer "team"
4666
67+
47680.7.0 2015.02.03
4869================
4970
searx/engines/gigablast.py+30−9
@@ -19,11 +19,21 @@ from time import time
1919# engine dependent config
2020categories = ['general']
2121paging = True
22−number_of_results = 5
22+number_of_results = 10
23+language_support = True
24+safesearch = True
2325
24−# search-url, invalid HTTPS certificate
26+# search-url
2527base_url = 'https://gigablast.com/'
26−search_string = 'search?{query}&n={number_of_results}&s={offset}&format=xml&qh=0&rxiyd={rxiyd}&rand={rand}'
28+search_string = 'search?{query}'\
29+ '&n={number_of_results}'\
30+ '&s={offset}'\
31+ '&format=xml'\
32+ '&qh=0'\
33+ '&rxiyd={rxiyd}'\
34+ '&rand={rand}'\
35+ '&qlang={lang}'\
36+ '&ff={safesearch}'
2737
2838# specific xpath variables
2939results_xpath = '//response//result'
@@ -36,12 +46,23 @@ content_xpath = './/sum'
3646def request(query, params):
3747 offset = (params['pageno'] - 1) * number_of_results
3848
39− search_path = search_string.format(
40− query=urlencode({'q': query}),
41− offset=offset,
42− number_of_results=number_of_results,
43− rxiyd=randint(10000, 10000000),
44− rand=int(time()))
49+ if params['language'] == 'all':
50+ language = 'xx'
51+ else:
52+ language = params['language'][0:2]
53+
54+ if params['safesearch'] >= 1:
55+ safesearch = 1
56+ else:
57+ safesearch = 0
58+
59+ search_path = search_string.format(query=urlencode({'q': query}),
60+ offset=offset,
61+ number_of_results=number_of_results,
62+ rxiyd=randint(10000, 10000000),
63+ rand=int(time()),
64+ lang=language,
65+ safesearch=safesearch)
4566
4667 params['url'] = base_url + search_path
4768
searx/tests/engines/test_gigablast.py+1
@@ -10,6 +10,7 @@ class TestGigablastEngine(SearxTestCase):
1010 query = 'test_query'
1111 dicto = defaultdict(dict)
1212 dicto['pageno'] = 0
13+ dicto['language'] = 'all'
1314 params = gigablast.request(query, dicto)
1415 self.assertTrue('url' in params)
1516 self.assertTrue(query in params['url'])
searx/version.py+1−1
@@ -19,7 +19,7 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >.
1919# version of searx
2020VERSION_MAJOR = 0
2121VERSION_MINOR = 8
22−VERSION_BUILD = 0
22+VERSION_BUILD = 1
2323
2424VERSION_STRING = "{0}.{1}.{2}".format(VERSION_MAJOR,
2525 VERSION_MINOR,