1
0
mirror of https://github.com/searxng/searxng.git synced 2024-11-05 12:50:11 +01:00
Commit Graph

849 Commits

Author SHA1 Message Date
Joseph Nuthalapati
bdc803e185
Make Python 3 able to read settings files with Unicode characters
SearX currently doesn't start up when run with Python 3 as it tries to parse the
settings.yml file with ASCII codecs.
There are similar problems with engines_languages.json and currencies.json
Python 3 requires that files with Unicode characters be read with a 'b' flag.
This also works with Python 2 and hence can be integrated into the main source
code.

Tested with the latest Python 3.6.4rc1 on Debian unstable.

Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
2017-12-21 17:33:19 +05:30
Noémi Ványi
2d5eed9b59 send constant cookie with query to Google 2017-12-18 21:38:52 +01:00
Adam Tauber
7752b0a807 [fix] gigablast url parameter change - fixes #1107 2017-12-09 21:00:08 +01:00
marc
4d1770398a remove 'all' option from search languages 2017-12-06 01:20:15 -06:00
Adam Tauber
1613c6319e [fix] handle /sorry redirects 2017-12-05 20:38:34 +01:00
Adam Tauber
1088c2a75d [fix] do not crash if publication date is missing in pubmed engine 2017-12-01 20:54:12 +01:00
Adam Tauber
801b5a56ad [fix] multiple fixes in pdbe engine 2017-12-01 20:54:12 +01:00
Adam Tauber
0969e50c5b [fix] convert json engine result attributes to string - closes #1006 2017-12-01 20:54:12 +01:00
Adam Tauber
6eb9503896 [fix] use english in google engine if no language was set - this prevents guessing the language by the IP of the instance 2017-11-22 22:56:47 +01:00
Adam Tauber
6fdb6640d9 [fix] revert language changes to prevent CAPTCHAs 2017-11-22 22:50:48 +01:00
Adam Tauber
9ab8536479 [fix] fix language support of google 2017-11-21 16:28:53 +01:00
pyrrh0n1c
4340c0b16c Fixed typos. 2017-11-07 14:14:20 +00:00
pyrrh0n1c
2231b02add Fixed the currency_convert engine. 2017-11-07 13:29:17 +00:00
Adam Tauber
00a7041daa
Merge pull request #1068 from Apply55gx/genius
Continuation of PR #1004 (seems abandoned)
2017-11-03 20:21:25 +01:00
Adam Tauber
7a9b18e9e9 [mod] add more error handling to json engine II. 2017-11-02 01:08:15 +01:00
Adam Tauber
181f1c6305 [mod] add more error handling to json engine 2017-11-02 00:43:29 +01:00
Noémi Ványi
5954a8e16a minor fix of BASE engine 2017-11-01 17:02:38 +01:00
Noémi Ványi
d20bba6dc7 minor fixes of pubmed engine
Closes #1045
2017-11-01 17:02:38 +01:00
jibe-b
df0d915806 [add] pubmed engine 2017-11-01 17:02:38 +01:00
Noémi Ványi
9c2b7a82f0 minor fixes of arxiv
Closes #1050
2017-11-01 14:22:22 +01:00
jibe-b
e391b2d970 [fix] remove .encode for python3 compatibility 2017-11-01 11:54:55 +01:00
jibe-b
5278fa666c [enh] use format to concatenate strings 2017-11-01 11:54:38 +01:00
jibe-b
3e3672e079 [add] arxiv engine 2017-11-01 11:54:16 +01:00
Apply55gx
d800e3fcfa Merge pull request #1 from asciimoo/master
-
2017-10-25 10:44:28 +02:00
Apply55gx
18a4e7035f removed unused indicies array 2017-10-25 10:42:37 +02:00
marc
44085e31d0 update engines_languages.json and languages.py
Also, fix fetch_languages.py so it can run on python3.
2017-10-10 16:53:28 -05:00
marc
a524dbb823 [fix] language support for bing images and videos 2017-10-10 16:49:49 -05:00
misnyo
33fd938016 [mod] int_or_zero refactored to searx_utils 2017-09-04 20:05:04 +02:00
misnyo
c3232b0e1a Merge branch 'master' into nyaa 2017-09-04 17:48:25 +02:00
Adam Tauber
234366b900 Merge pull request #1018 from misnyo/generalfile
[mod]generalfile engine removed
2017-09-03 23:09:49 +02:00
Adam Tauber
c505c3c1ca Merge pull request #1019 from misnyo/gigablast
[fix] gigablast api fix
2017-09-03 23:09:33 +02:00
misnyo
b91772eff1 [fix] gigablast pep8 fix 2017-08-31 21:49:19 +02:00
misnyo
01330f71cd [fix] nyaa.si fixed 2017-08-31 21:32:30 +02:00
misnyo
1e2b60f380 [mod] tokyotoshokan dependecy to other engine removed 2017-08-31 21:31:40 +02:00
misnyo
3182ba7069 [fix] google news dom xpath fix 2017-08-31 17:48:07 +02:00
misnyo
8849606e5f [fix] gigablast api fix 2017-08-31 16:57:57 +02:00
misnyo
2d66df0548 [mod]generalfile engine removed 2017-08-31 15:51:16 +02:00
Adam Tauber
e74aaa781e Merge pull request #1016 from misnyo/blekko
[mod]blekko images removed
2017-08-30 21:48:36 +02:00
Adam Tauber
610117d054 Merge pull request #1015 from misnyo/digg
[fix] digg now requires cookie for search
2017-08-30 21:35:12 +02:00
misnyo
6e92fb383a [fix] digg cookie characters created in module import 2017-08-30 21:14:12 +02:00
misnyo
20d2d4dab1 [fix] pep8 fix for faroo engine 2017-08-30 21:09:03 +02:00
misnyo
0607b167f8 [fix] faroo json api and image layout fixed 2017-08-30 21:09:03 +02:00
misnyo
a49cc18f9c [fix] digg now requires cookie for search 2017-08-30 19:51:33 +02:00
misnyo
f139f9cfdb [mod]blekko images removed 2017-08-30 16:47:56 +02:00
misnyo
d14e2781b2 [fix]torrentz search engine fixed for new version 2017-08-25 00:52:35 +02:00
woorst
2434c29dc5 New engine: Genius (lyrics) 2017-08-19 19:05:17 -05:00
marc
3ca9cad927 add bing videos engine 2017-08-05 20:35:57 -05:00
marc
856dfc3018 add google videos 2017-07-26 15:49:16 +02:00
Adam Tauber
077d8efed8 [fix] use poolrequests in ddg engines 2017-07-21 16:23:20 +02:00
Adam Tauber
0f6612bb40 [mod] separate engine load and initialization 2017-07-21 14:27:25 +02:00
Adam Tauber
1794f6a4d3 [enh] add "inactive" attribute to engines
This modification allows us to deactivate engines in settings.yml
without commenting them out
2017-07-20 13:32:20 +02:00
marc
405e5c8f24 [fix] duckduckgo images doesn't fail with countryless language 2017-07-10 18:41:50 +02:00
potato
9b82cb1908 [fix] is_valid_lang fixed for new languages.py + dictzone engine encoding 2017-06-25 18:29:19 +02:00
vache asatryan
5835ebf955 fix github url 2017-06-18 21:53:10 +04:00
Noémi Ványi
c361811cb5 [fix] fix xpath of google images 2017-06-13 19:47:56 +02:00
Adam Tauber
343ac7197d [fix] pep8 2017-06-06 23:37:42 +02:00
Adam Tauber
78365ffb8a [enh] add init function to engines which loads parallel 2017-06-06 22:20:20 +02:00
marc
3b950929b1 [fix] fix duckduckgo's offset
First page now starts with 0 offset,
rather than starting on the 30th result.

DuckDuckGo returns 30 results on each page.
2017-05-27 21:12:39 -05:00
marc
c65a409f0d add duckduckgo images engine 2017-05-23 20:07:09 +02:00
Adam Tauber
1972a044a3 [fix] produce valid urls if scheme is missing 2017-05-22 15:48:37 +02:00
Adam Tauber
8db527c1d2 [fix] use raw response with etree.parsefromstring - Unicode strings with encoding declaration are not supported 2017-05-22 15:36:52 +02:00
Adam Tauber
a4f7046b8f [fix] pep8 2017-05-18 22:19:44 +02:00
Noémi Ványi
2a9339f4b7 [fix] add more description on possible search tpyes 2017-05-18 22:04:31 +02:00
Noémi Ványi
2db807368c [enh] make search type of mediawiki configurable 2017-05-18 21:34:54 +02:00
marc
9ee8e552da [fix] bing images 2017-05-17 15:45:55 +02:00
Dalf
c233bf0df9 [fix] framalibre : remove result['thumbnail'] (not used) 2017-05-15 17:28:21 +02:00
Alexandre Flament
f5128c7cb9 [mod] add/modify image fetching for bing_news, qwant and twitter engines 2017-05-15 17:28:21 +02:00
Adam Tauber
52e615dede [enh] py3 compatibility 2017-05-15 12:02:30 +02:00
Adam Tauber
46a2c63f8e [fix] yahoo news date parsing 2017-04-08 19:45:04 +02:00
Alexandre Flament
12d91c1d67 [mod] searx doesn't crash at startup when an engine can't be loaded (see #884) 2017-04-08 17:38:46 +02:00
François Revol
45d15bd6f0 Add framalibre engine
framalibre.org is a catalogue of Free Software, edited by Framasoft.

For now we pass the thumbnail as img_src as it doesn't seem to be used
for IT...
2017-03-22 00:18:23 +01:00
marc
fd65c12921 make search language handling less strict
languages.py can change, so users may query on a language that is not
on the list anymore, even if it is still recognized by a few engines.

also made no and nb the same because they seem to return the same,
though most engines will only support one or the other.
2017-03-18 23:44:21 +01:00
marc
805fb02ed1 add language support for qwant
closes issue #863
2017-03-18 23:44:21 +01:00
Noémi Ványi
742e4dfdcc [fix] fix paging of duckduckgo 2017-02-01 20:54:13 +01:00
Adam Tauber
52d1087202 [enh] add result number parsing to google engine 2017-01-27 00:18:46 +01:00
Adam Tauber
57149661e4 Merge pull request #830 from davidar/se
Semantic Scholar
2017-01-18 23:50:11 +01:00
Adam Tauber
b1d49bacb0 Merge pull request #827 from davidar/spell
[enh] show spelling corrections
2017-01-18 23:49:01 +01:00
David A Roberts
7492997c51 [fix] allow empty content 2017-01-17 21:14:33 +10:00
David A Roberts
1d30141c20 [enh] show spelling corrections 2017-01-16 13:31:16 +10:00
jcherqui
39a97825d9 Add torrent infos 2017-01-15 16:13:23 +01:00
jcherqui
4776abd1ac Remove categories 2017-01-15 16:13:23 +01:00
jcherqui
a320328dda Fix test 2017-01-15 16:13:23 +01:00
jcherqui
0549fb40d2 Add 1337x.to engine 2017-01-15 16:13:23 +01:00
Adam Tauber
108392f8da [fix] skip non-complete google news results 2017-01-10 11:03:05 +01:00
Adam Tauber
0d4da30c7f [enh] add instant answers to google engine 2017-01-05 17:20:12 +01:00
Adam Tauber
525e5d275c Merge pull request #801 from dalf/extract_text
[fix] extract_text: use html.tostring instead html_to_text.
2017-01-02 12:36:50 +01:00
Alexandre Flament
90e1db3e5c [fix] extract_text: use html.tostring instead html_to_text. Fix #711 2016-12-31 13:56:09 +01:00
Adam Tauber
6bf9c398a7 [fix] use english as default language in bing
If no language is specified, bing returns results with multiple languages
for one query which isn't really useful. Setting english as default
insted if nothing.
2016-12-30 18:17:14 +01:00
marc
1175b3906f change language list to only include languages with a minimum of engines
that support them.
users can still query lesser supported through the :lang_code bang.
2016-12-29 01:55:30 -06:00
Adam Tauber
8bff42f049 Merge branch 'master' into languages 2016-12-28 20:00:53 +01:00
Adam Tauber
ea034fafa9 [fix] proper engine init 2016-12-27 17:55:44 +01:00
Adam Tauber
a605377c40 [enh] explicit engine init 2016-12-27 17:31:14 +01:00
Adam Tauber
b6fc154616 [enh] add searx engine 2016-12-24 22:23:36 +01:00
Adam Tauber
0171db5c3f [fix] handle missing images in google news 2016-12-23 12:59:52 +01:00
marc
7fba3d1179 Merge branch 'master' into languages 2016-12-16 22:14:36 -06:00
marc
4a1ff56389 minor fixes in utils/fetch_languages.py 2016-12-16 22:14:14 -06:00
Adam Tauber
19cd2bf3b5 [fix] re-enable ssl verification for searchcode
closes #784
2016-12-16 15:21:27 +01:00
marc
af35eee10b tests for _fetch_supported_languages in engines
and refactor method to make it testable without making requests
2016-12-15 00:40:21 -06:00
marc
e0c270bd72 tests for language support in engines 2016-12-13 23:51:15 -06:00
marc
f62ce21f50 [mod] fetch supported languages for several engines
utils/fetch_languages.py gets languages supported by each engine and
generates engines_languages.json with each engine's supported language.
2016-12-13 19:58:10 -06:00
marc
92c6e88ad3 small fixes 2016-12-13 19:56:59 -06:00
marc
a11948c71b Add language support for more engines. 2016-12-13 19:32:43 -06:00
marc
c677aee58a filter langauges 2016-12-13 19:32:00 -06:00
marc
149802c569 [enh] add supported_languages on engines and auto-generate languages.py 2016-12-13 19:32:00 -06:00
Noémi Ványi
b034356825 add year filter to engines with time range support && tests
Following engines does not support "Last year":
 * Bing News
 * DeviantArt
 * DuckDuckGo
 * Yahoo
 * YouTube (noapi)
2016-12-11 16:58:31 +01:00
Noémi Ványi
c59c76e6ee add year to time range to engines which support "Last year"
Engines:
 * Bing images
 * Flickr (noapi)
 * Google
 * Google Images
 * Google News
2016-12-11 16:58:31 +01:00
Thomas Renard
16c40ffefd htmlize yacy contents 2016-12-11 14:05:07 +01:00
Noémi Ványi
553f3a3a1a fix xpath of yandex 2016-12-11 11:58:49 +01:00
Adam Tauber
4676e1dcde [fix] remove result escaping from engine 2016-12-11 03:24:26 +01:00
Adam Tauber
1a82ed6f54 [mod] 500px rewrite 2016-12-11 03:22:42 +01:00
Adam Tauber
f6e9c074bb [fix] vimeo engine change follow-up 2016-12-11 02:33:04 +01:00
Adam Tauber
a2c94895c1 [fix] google news engine change follow-up 2016-12-11 01:03:52 +01:00
Adam Tauber
c3dcebb778 [fix] remove html tags from qwant results 2016-12-10 21:31:05 +01:00
Adam Tauber
e12a137a2f [fix] unicode response in deezer and spotify 2016-12-10 00:30:34 +01:00
Alexandre Flament
e48f07a367 Merge branch 'master' into searchpy2 2016-12-09 23:11:45 +01:00
Adam Tauber
72a217f983 [mod] return empty string on missing osm title
Sometimes openstreetmap returns with None as title. In these cases use an empty
string instead.
2016-12-09 19:53:54 +01:00
Adam Tauber
fdf63940e8 [fix] tests ++ flickr error 2016-12-09 19:11:22 +01:00
Adam Tauber
16bdc0baf4 [mod] do not escape html content in engines 2016-12-09 18:59:19 +01:00
Adam Tauber
55dc538398 [mod] move load_module function to utils 2016-11-19 17:51:19 +01:00
Adam Tauber
43ddbc60da [fix] pep8 2016-11-14 16:09:16 +01:00
Adam Tauber
16f2e346b3 [fix] bing unicode issue part III. 2016-11-14 15:52:29 +01:00
Adam Tauber
1176505fa4 [fix] bing character encoding - closes #760 2016-11-14 15:47:42 +01:00
Adam Tauber
17b08d096c [fix] unicode search expression for bing 2016-11-07 22:33:17 +01:00
Adam Tauber
16ff8d06c7 [fix] bing paging and language support
see https://msdn.microsoft.com/en-us/library/ff795620.aspx for bing
specific search operators

closes #755
2016-11-07 22:30:20 +01:00
Alexandre Flament
01e2648e93 Simplify search.py, basically updated PR #518
The timeouts in settings.yml is about the total time (not only the HTTP request but also the prepare the request and parsing the response)
It was more or less the case before since the threaded_requests function ignores the thread after the timeout even the HTTP request is ended.

New / changed stats :
* page_load_time : record the HTTP request time
* page_load_count: the number of HTTP request
* engine_time : the execution total time of an engine
* engine_time_count : the number of "engine_time" measure

The avg response times in the preferences are the engine response time (engine_load_time / engine_load_count)

To sum up :
* Search.search() filters the engines that can't process the request
* Search.search() call search_multiple_requests function
* search_multiple_requests creates one thread per engine, each thread runs the search_one_request function
* search_one_request calls the request function, make the HTTP request, calls the response function, extends the result_container
* search_multiple_requests waits for the the thread to finish (or timeout)
2016-11-05 13:45:20 +01:00
Noémi Ványi
1490d6bc93 add time range search for flickr 2016-11-01 17:58:29 +01:00
Noémi Ványi
5c02b9ef31 add time range support for bing images 2016-11-01 17:58:29 +01:00
Noémi Ványi
d2e0cbafb2 add time range search for youtube noapi 2016-11-01 17:58:29 +01:00
Noémi Ványi
f70d405202 add time range search for bing news 2016-11-01 17:58:29 +01:00
Noémi Ványi
53c9fde992 fix kickass torrents engine 2016-10-22 05:27:18 +02:00
Alexander Minges
3c5883408c initial commit of pdbe engine
Adds support for queries to the Protein Data Bank Europe (PDBe).
2016-10-13 00:40:38 +02:00
Pydo
55a5b686ed Merge branch 'master' of https://github.com/asciimoo/searx into feature/seedpeer-engine-integration
Resolved conflict searx/settings.yml
2016-10-01 10:46:18 -04:00
Adam Tauber
86daef2063 [fix] do not allow underscore in engine names - closes #708 2016-09-28 22:30:05 +02:00
marc
d1d4ed4376 [fix] results with digbit don't truncate anymore 2016-09-20 16:11:33 -05:00
firebovine
e145fdb86d #607 - noapi fix 2016-09-10 17:43:12 -04:00
Lorenzo J. Lucchini
a8907224a1 Improving Wolfram Alpha search hit content
Making WA search hits contain
- the (parsed) input inside the "title" instead of just "Wolfram|Alpha", to better match other hit titles and to confirm correct parsing of input to the user
- the first output field that contains any text (skipping ones that are only pictures; this is usually the most meaningful "result" field) instead of the raw input as the "content", making it additionally possible to obtain WA computations from JSON API calls
2016-09-10 17:42:19 -04:00
marc
09ee2aa69d [fix] Result text in Wolfram|Alpha (#607) 2016-09-10 17:42:04 -04:00
Adam Tauber
3144ec1d59 [fix] unicode urls 2016-09-06 17:17:42 +02:00
potato
983415bc38 [enh] is_valid_lang moved to utils 2016-09-06 16:43:48 +02:00
potato
b7d578ae80 [enh] engine header comments 2016-09-06 16:36:04 +02:00
potato
8c72a22757 [enh] api_key usage, disable the engine by default 2016-09-06 16:12:34 +02:00
potato
c051e6a2c3 [fix] pep8 2016-09-06 15:44:05 +02:00
potato
ab471fd13b [enh] mymemory translated engine added for multi-word translations 2016-09-06 15:40:07 +02:00
potato
22bd39fd42 [fix] only 1-word search triggers the engine 2016-09-06 15:07:47 +02:00
potato
7bf1013c15 [enh] removed missing params; [fix] pep8 2016-09-06 14:24:08 +02:00
potato
bc806bfab1 [fix] no lambda anymore, cgi.escape 2016-09-06 14:12:46 +02:00
potato
5416f0f248 [enh] dictionary engine renamed to dictzone 2016-09-06 12:50:56 +02:00
potato
84ff6e289e [enh] filter non-existing language code/name containing requests 2016-09-06 12:46:18 +02:00
potato
b808a2e266 [fix] don't merge with suggestions 2016-09-06 12:37:26 +02:00
potato
3f4cc2146c [enh] return results instead of answers 2016-09-06 12:34:20 +02:00