on master help sign in
Fix Travis errors.
bc2420fa01200356
searx/engines/wolframalpha_api.py+9−14
@@ -16,31 +16,30 @@ from searx.utils import html_to_text
16# search-url
16# search-url
17base_url = 'http://api.wolframalpha.com/v2/query'
17base_url = 'http://api.wolframalpha.com/v2/query'
18search_url = base_url + '?appid={api_key}&{query}&format=plaintext'
18search_url = base_url + '?appid={api_key}&{query}&format=plaintext'
19−site_url = 'http://wolframalpha.com/input/?{query}'
19+api_key = ''
20+
20
21
21# do search-request
22# do search-request
22def request(query, params):
23def request(query, params):
23 params['url'] = search_url.format(query=urlencode({'input': query}),
24 params['url'] = search_url.format(query=urlencode({'input': query}),
24 api_key=api_key)
25 api_key=api_key)
25
26
26− # need this for url in response
27− global my_query
28− my_query = query
29−
30 return params
27 return params
31
28
29+
32# replace private user area characters to make text legible
30# replace private user area characters to make text legible
33def replace_pua_chars(text):
31def replace_pua_chars(text):
34− pua_chars = { u'\uf74c': 'd',
32+ pua_chars = {u'\uf74c': 'd',
35− u'\uf74d': u'\u212f',
33+ u'\uf74d': u'\u212f',
36− u'\uf74e': 'i',
34+ u'\uf74e': 'i',
37− u'\uf7d9': '=' }
35+ u'\uf7d9': '='}
38
36
39 for k, v in pua_chars.iteritems():
37 for k, v in pua_chars.iteritems():
40 text = text.replace(k, v)
38 text = text.replace(k, v)
41
39
42 return text
40 return text
43
41
42+
44# get response from search-request
43# get response from search-request
45def response(resp):
44def response(resp):
46 results = []
45 results = []
@@ -55,13 +54,9 @@ def response(resp):
55 result = search_results.xpath('//pod[attribute::primary="true"]/subpod/plaintext')[0].text
54 result = search_results.xpath('//pod[attribute::primary="true"]/subpod/plaintext')[0].text
56 result = replace_pua_chars(result)
55 result = replace_pua_chars(result)
57
56
58− # bind url from site
59− result_url = site_url.format(query=urlencode({'i': my_query}))
60−
61 # append result
57 # append result
62 # TODO: shouldn't it bind the source too?
58 # TODO: shouldn't it bind the source too?
63− results.append({'url': result_url,
64− 'answer': result})
59+ results.append({'answer': result})
65
60
66 # return results
61 # return results
67 return results
62 return results