Alexandre Flament
aa887eb375
[mod] checker : replace pycld3 by langdetect
...
pycld3 requires the native library cld3
langdetect is a pure python package
2021-01-19 21:26:04 +01:00
Alexandre Flament
67a1aab0d5
[fix] /stats/checker : remove the timestamp field when the checker is disabled
2021-01-18 08:19:53 +01:00
Alexandre Flament
d473407ec9
[fix] checker: fix engine statistics
...
Without this commit, the URL /stats/errors shows percentage above 100% after the checker has run.
2021-01-18 08:19:44 +01:00
Alexandre Flament
ca76f3119a
[fix] error_recorder: record code and lineno about the engine
...
since the PR #2225 , code and lineno were sometimes meaningless
see /stats/errors
2021-01-17 16:25:11 +01:00
Alexandre Flament
80d7411f2c
Merge pull request #2452 from kvch/add-wilby-engine
...
Add wiby.me engine
2021-01-16 22:36:31 +01:00
Alexandre Flament
b405646749
Merge pull request #2451 from mrwormo/invidious-engine
...
[Fix] Invidious Engine
2021-01-16 19:25:45 +01:00
Alexandre Flament
a4dcfa025c
[enh] engines: add about variable
...
move meta information from comment to the about variable
so the preferences, the documentation can show these information
2021-01-14 20:57:17 +01:00
mrwormo
2dff3887f0
[fix] Invidious engine by enabling requests by randomly picking amongst working instances
2021-01-14 12:12:56 +01:00
Alexandre Flament
912c7e975c
[fix] checker: don't run the checker when uwsgi is not properly configured
...
Before this commit, even with the scheduler disabled, the checker was running
at least once for each uwsgi worker.
2021-01-13 14:07:39 +01:00
Alexandre Flament
7f0c508598
[fix] checker: fix typo unknown instead of unknow
2021-01-12 11:47:17 +01:00
Alexandre Flament
a0c8b413a6
[mod] searx.shared: minor tweaks
...
searx.shared.shared_abstract.SharedDict inherit from abc.ABC
searx.shared.shared_uwsgi.schedule can schedule multiple functions without issue
2021-01-12 11:47:17 +01:00
Alexandre Flament
87bafbc32b
[mod] checker: add status and timestamp to the result
...
for each engine: replace status by success
2021-01-12 11:47:17 +01:00
Alexandre Flament
f3e1bd308f
[mod] checker: minor adjustements on the default tests
...
the query "time" is convinient because most of the search engine will return some results,
but some engines in the general category will return documentation about the HTML tags <time> or <input type="time">
2021-01-12 11:47:17 +01:00
Alexandre Flament
45bfab77d0
|mod] checker: improve searx-checker command line
...
* output is unbuffered
* verbose mode describe more precisly the errrors
2021-01-12 11:47:17 +01:00
Alexandre Flament
3a9f513521
[enh] checker: background check
...
See settings.yml for the options
SIGUSR1 signal starts the checker.
The result is available at /stats/checker
2021-01-12 11:47:17 +01:00
Alexandre Flament
6e2872f436
[enh] add searx.shared
...
shared dictionary between the workers (UWSGI or werkzeug)
scheduler: run a task once every x seconds (UWSGI or werkzeug)
2021-01-12 11:47:17 +01:00
Markus Heiser
9c581466e1
[fix] do not colorize output on dumb terminals
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-12 11:47:17 +01:00
Alexandre Flament
ca0889d488
[enh] checker: wikidata & ddd: add specific tests
2021-01-12 11:47:17 +01:00
Alexandre Flament
16a889dd8f
[enh] checker: add rosebud test
2021-01-12 11:47:17 +01:00
Alexandre Flament
8cbc9f2d58
[enh] add checker
2021-01-12 11:47:17 +01:00
Alexandre Flament
f7e11fd722
Merge pull request #2459 from dalf/update-python
...
Update python
2021-01-12 11:02:58 +01:00
Alexandre Flament
9c55d772e9
Merge pull request #2408 from return42/rm-brand-make
...
[mod] move brand options from Makefile to settings.yml
2021-01-12 10:52:42 +01:00
Alexandre Flament
f5c3cb7afa
[mod] drop Python 3.5 support
2021-01-12 09:45:16 +01:00
Alexandre Flament
8d0312d014
Merge pull request #2458 from MarcAbonce/hide-links-mobile2
...
Hide links panel in mobile screens
2021-01-12 08:27:24 +01:00
Marc Abonce Seguin
635c6516a4
hide links panel in mobile screens
2021-01-11 20:40:21 -07:00
Alexandre Flament
424e6abc7e
[mod] settings.yml: move brand settings to a dedicated section
2021-01-11 22:59:52 +01:00
Markus Heiser
d0338cb504
[fix] add missing brand.CONTACT_URL to /config API endpoint
...
Suggested-by: @dalf / https://github.com/searx/searx-stats2/issues/59#issuecomment-747961582
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-11 22:12:38 +01:00
Markus Heiser
9e53470b4c
[mod] get rid of searx/brand.py
...
Removes module searx/brand.py and creates a namespace at searx.brand.
This patch is a first 'proof of concept'. Later we can decide to remove the
brand namespace entirely or not.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-11 22:12:38 +01:00
Markus Heiser
9485179064
[mod] move brand options from Makefile to settings.yml
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-11 22:12:38 +01:00
Alexandre Flament
c2646df496
Merge pull request #2454 from MarcAbonce/fix-empty-lang-bang
...
Fix empty colon in query from selecting Chinese
2021-01-10 11:01:32 +01:00
Marc Abonce Seguin
571ce9ff07
fix empty colon in query from selecting Chinese
2021-01-09 22:11:41 -07:00
Noémi Ványi
a6dd1de4a8
Add wiby.me engine
...
Closes #2339
2021-01-08 23:11:18 +01:00
Markus Heiser
b0bb0a3a0f
[fix] Library Genesis links shifted by 1 #1998
...
Fixes : #1998
Suggested-by: @linuxmue
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-07 14:47:34 +01:00
Émilien Devos
fc6cfc3b58
Remove voat due to its shutdown
...
Voat shutted down on December 25th, 2020 at 12 noon PST: https://voat.co/host/voat/static/inactive.min.html?ReturnUrl=/
2021-01-06 10:45:02 +00:00
Alexandre Flament
54e69d0367
[upd] update dependencies
...
minor change in the oscar theme becase the last version of jinja2
respect more carefully the spaces in the templates
2020-12-28 09:04:39 +01:00
Alexandre Flament
568b9465e9
[mod] check secret_key when searx.webapp is imported
...
Without this commit the module searx checks the secret_key value.
With this commit, make docs, utils/standalone_searx.py,
utils/fetch_firefox_version.py works without SEARX_DEBUG=1
For reference see https://github.com/searx/searx/pull/2386
2020-12-27 10:30:20 +01:00
Alexandre Flament
1956ab4b50
Merge pull request #2412 from dalf/update-buildenv
...
[fix] update buildenv
2020-12-27 08:31:23 +01:00
Markus Heiser
4de276e364
[upd] make SEARX_DEBUG=1 useragents.update
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-22 14:23:58 +01:00
Alexandre Flament
db5b060455
[fix] update buildenv
...
CONTACT_URL is unset in Makefile, but searx/brand.py and
utils/brand.env are not updated.
This commit fixes this issue.
2020-12-21 10:55:28 +01:00
Alexandre Flament
3f8ebf70b1
[fix] pylint: use "raise ... from ..."
2020-12-20 09:46:53 +01:00
Alexandre Flament
eb33ae6893
[fix] Python 3.9: use html.unescape instead of HTMLParser.unescape
2020-12-20 09:46:53 +01:00
Alexandre Flament
04447f8c1a
Merge pull request #2398 from dalf/mod-search-query
...
Mod search query
2020-12-20 09:32:54 +01:00
Alexandre Flament
f4983e7415
[mod] remove emojis from source code
2020-12-20 08:58:57 +01:00
Alexandre Flament
eda8934f15
[mod] searx.search.EngineRef: remove from_bang parameter
...
from_bang is True when the user query contains a bang.
In this case the category is also set to 'none'.
from_bang only usage was in searx.webadapter.parse_specific :
if from_bang is True, then the EngineRef category is ignored and force to 'none'.
This commit also removes the searx.webadapter.parse_sepecific function.
2020-12-18 12:29:48 +01:00
Alexandre Flament
995ba2f406
[mod] searx.search.SearchQuery: remove categories parameter
...
The categories parameter is useless in the constructor:
it is always the categories from the EngineRef.
The categories becomes a property.
2020-12-18 12:29:48 +01:00
Alexandre Flament
14c7cc0e11
[mod] Makefile: make CONTACT_URL optional
2020-12-18 09:54:03 +01:00
BBaoVanC
19fce74443
Add link to contact instance maintainer to footer of each page ( #2391 )
2020-12-18 09:53:28 +01:00
Alexandre Flament
5c6a5407a0
[fix] fix of PR #2225
2020-12-17 16:49:48 +01:00
Alexandre Flament
02fc4147ce
[mod] dictzone, translated, currency_convert: use engine_type online_curency and online_dictionnary
2020-12-17 11:39:36 +01:00
Alexandre Flament
7ec8bc3ea7
[mod] split searx.search into different processors
...
see searx.search.processors.abstract.EngineProcessor
First the method searx call the get_params method.
If the return value is not None, then the searx call the method search.
2020-12-17 11:39:36 +01:00
Alexandre Flament
c0cc01e936
[mod] searx.search: search_multiple_requests is a method of Search class
2020-12-17 11:39:36 +01:00
Alexandre Flament
3b87efb3db
[mod] move seax/search.py to searx/search/__init__.py
2020-12-17 11:39:36 +01:00
Alexandre Flament
9bc1856e2b
[mod] themes: remove legacy, courgette and pix-art themes
2020-12-17 11:33:28 +01:00
Alexandre Flament
88660fde90
Merge pull request #2396 from lucky13820/patch-1
...
Fix the StartPage result title is showing the url
2020-12-17 08:23:34 +01:00
lucky13820
fea8958e99
Fix the StartPage result title is showing the url
...
Fix the issue 2395 where StartPage result title is showing the url. https://github.com/searx/searx/issues/2395
2020-12-16 13:54:14 -08:00
Markus Heiser
9db7d6357b
[themes] add hyperlink to searx instances list in error message
...
closes : #2383
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-16 20:24:42 +01:00
Alexandre Flament
39ac81478c
prepare release 0.18.0
2020-12-14 19:03:09 +01:00
Alexandre Flament
292b73a3fc
Merge pull request #2385 from joshu9h/patch-1
...
[Fix] Startpage
2020-12-14 17:56:48 +01:00
Alexandre Flament
36600118fb
Merge pull request #2372 from dalf/remove-broken-engines
...
[remove] remove searchcode_doc and twitter
2020-12-13 17:11:05 +01:00
joshu9h
8260435c8b
[Fix] Startpage
2020-12-13 15:43:50 +01:00
Alexandre Flament
3c4a9c1188
Merge pull request #2358 from dalf/fix-command
...
[fix] command engine: SearchQuery.query is str not bytes
2020-12-11 14:53:24 +01:00
Alexandre Flament
d703119d3a
[enh] add raise_for_httperror
...
check HTTP response:
* detect some comme CAPTCHA challenge (no solving). In this case the engine is suspended for long a time.
* otherwise raise HTTPError as before
the check is done in poolrequests.py (was before in search.py).
update qwant, wikipedia, wikidata to use raise_for_httperror instead of raise_for_status
2020-12-11 14:37:08 +01:00
Alexandre Flament
033f39bff7
Merge pull request #2376 from dalf/fix-mojeek
...
Fix mojeek
2020-12-11 13:14:54 +01:00
Alexandre Flament
6bc6d5e9fd
Merge pull request #2371 from dalf/mod-genius
...
[mod) genious: return valid results even if contents are empty
2020-12-11 13:14:03 +01:00
Alexandre Flament
0ba74cd812
[mod] results: don't crash when an engine don't have a category
...
According to
820b468bfe/searx/engines/__init__.py (L87-L88)
an engine can have no category at all.
Without this commit, searx raise an exception in searx/results.py
Note: in this case, the engine is not shown in the preferences.
2020-12-10 10:57:07 +01:00
Alexandre Flament
d41cafd5f3
[fix] xpath, mojeek: fix commit 58d72f2692
...
before commit 58d72f2
, category was not set in xpath.py,
so searx/engines/__init__py was setting the category to ['general']
the commit 58d72f2
set the category to [] which is not replaced by searx/engines/__init__.py
consequence: the mojeek engine is hidden in the preferences.
this commit revert the xpath.py change.
close #2368
2020-12-10 10:52:06 +01:00
Noémi Ványi
3a63dfbdd7
display if an engine does not support https
...
Closes #302
2020-12-09 20:49:54 +01:00
Alexandre Flament
1c9e7cef50
[remove] remove searchcode_doc and twitter
...
* twitter: the API has changed. the engine needs to rewritten.
* searchcode_doc: the API about documentation doesn't exist anymore.
2020-12-09 13:14:31 +01:00
Alexandre Flament
fa73f10f11
[mod) genious: return valid results even if contents are empty
2020-12-09 13:01:34 +01:00
Alexandre Flament
42a194898b
Merge pull request #2360 from dalf/update-libgen
...
[mod] libgen: update the URL to http://libgen.rs/
2020-12-08 20:33:53 +01:00
Alexandre Flament
a77d8c8227
Merge pull request #2359 from dalf/update-duden
...
[mod] duden engine
2020-12-08 20:33:38 +01:00
Alexandre Flament
bd4869ecd0
Merge pull request #2366 from dalf/remove-seedpeer
...
[remove] seedpeer engine
2020-12-08 20:33:23 +01:00
Alexandre Flament
56c64d6b64
[remove] seedpeer engine
...
the website is offline.
2020-12-07 21:02:29 +01:00
Alexandre Flament
c1a9732268
Merge pull request #2364 from dalf/fix-youtube-noapi
...
[fix] youtube_noapi engine
2020-12-07 20:26:00 +01:00
Alexandre Flament
13d3004703
Merge pull request #2365 from dalf/fix-soundcloud
...
[fix] soundclound: accept result without content
2020-12-07 20:25:17 +01:00
Alexandre Flament
62073c0e1d
Merge pull request #2361 from dalf/fix-1x
...
[fix] 1x engine
2020-12-07 20:24:47 +01:00
Alexandre Flament
923bc02c17
Merge pull request #2363 from dalf/fix-wikipedia-minor
...
[fix] wikipedia: minor fix: return no result instead of crash in some very few cases.
2020-12-07 18:33:37 +01:00
Alexandre Flament
deb1bde20d
[fix] soundclound: accept result without content
2020-12-07 17:45:36 +01:00
Alexandre Flament
34df0f7910
[fix] youtube_noapi engine
2020-12-07 17:44:31 +01:00
Alexandre Flament
58d51e082d
[fix] wikipedia: minor fix: return no result instead of crash in some very few cases.
...
In few cases, the JSON results doesn't contains the key 'type'.
2020-12-07 17:42:05 +01:00
Alexandre Flament
4ec810749b
[fix] 1x engine
2020-12-07 15:46:00 +01:00
Alexandre Flament
1e781863fa
[fix] command engine: SearchQuery.query is str not bytes
...
see c225db45c8
2020-12-07 10:43:42 +01:00
Alexandre Flament
9bf594cbcf
[mod] duden engine
...
* add params['soft_max_redirects'] = 1 (when there is spelling suggestion)
* avoid try..except
* use eval_xpath_* functions
2020-12-07 10:31:11 +01:00
Alexandre Flament
b3032cf953
[mod] libgen: update the URL to http://libgen.rs/
...
https://libgen.is actually redirect to http://libgen.rs/
It seems there is no HTTPS version:
* https://www.wikidata.org/wiki/Q22017206
* https://librarygenesis.net/
2020-12-07 10:19:34 +01:00
Alexandre Flament
a458451d20
Merge pull request #2356 from dalf/fix-ddd
...
[fix] duckduckgo_definitions: fix relative image URL
2020-12-07 10:16:53 +01:00
Alexandre Flament
925bb561a2
Merge pull request #2352 from dalf/no_http
...
Remove HTTP connections as much as possible
2020-12-06 10:18:49 +01:00
Alexandre Flament
28cc644f0a
[fix] duckduckgo_definitions: fix relative image URL
...
ddg returns relative URL to https://duckduckgo.com/
2020-12-06 10:14:09 +01:00
Alexandre Flament
cdceec1cbb
Merge pull request #2354 from dalf/fix-wikipedia
...
[fix] wikipedia engine: don't raise an error when the query is not found
2020-12-04 20:42:45 +01:00
Alexandre Flament
f0054d67f1
[fix] wikipedia engine: don't raise an error when the query is not found
...
Add a new parameter "raise_for_status", set by default to True.
When True, any HTTP status code >= 300 raise an exception ( #2332 )
When False, the engine can manage the HTTP status code by itself.
2020-12-04 20:04:39 +01:00
Alexandre Flament
bef2f2efa8
[fix] wikidata: fix crash when the item has no description at all and at least one URL.
2020-12-04 17:17:20 +01:00
Alexandre Flament
244e812f37
[fix] remove searx/engines/filecrop.py (dead code)
2020-12-04 16:48:15 +01:00
Alexandre Flament
0226ae69d3
[fix] dbpedia autocomplete (and use HTTPS)
2020-12-04 16:47:43 +01:00
Alexandre Flament
fa909c7c02
[mod] stackoverflow & yandex: detect CAPTCHA response
2020-12-03 13:23:19 +01:00
Alexandre Flament
d0d7a3e1c2
[fix] settings_loader: don't crash when a key exists only in the user settings
...
typical use case: result_proxy can be defined in the user settings,
but are not defined the default settings.yml
2020-12-03 11:35:12 +01:00
Alexandre Flament
64cccae99e
[mod] various engines: use eval_xpath* functions and searx.exceptions.*
...
Engine list: ahmia, duckduckgo_images, elasticsearch, google, google_images, google_videos, youtube_api
2020-12-03 10:22:48 +01:00
Alexandre Flament
ad72803ed9
[mod] xpath, 1337x, acgsou, apkmirror, archlinux, arxiv: use eval_xpath_* functions
2020-12-03 10:22:48 +01:00
Alexandre Flament
de887c6347
[mod] bing_news: use eval_xpath_getindex
...
remove unused function searx.utils.list_get
2020-12-03 10:22:48 +01:00
Alexandre Flament
1d0c368746
[enh] record details exception per engine
...
add an new API /stats/errors
2020-12-03 10:22:48 +01:00
Alexandre Flament
6b5a578822
Merge pull request #2285 from return42/fix-digg
...
bugfix & refactor digg engine
2020-12-03 10:20:40 +01:00
mrwormo
2b153db74c
Disable Invidious engine by default
2020-12-02 21:56:11 +01:00
Markus Heiser
bef185723a
[refactor] digg - improve results and clean up source code
...
- strip html tags and superfluous quotation marks from content
- remove not needed cookie from request
- remove superfluous imports
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 21:54:27 +01:00
Markus Heiser
6b0a896f01
[mod] digg - pylint searx/engines/digg.py
...
Eliminate redundant file names which are tested by test.pylint and ignored by
test.pep8
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 20:59:30 +01:00
Markus Heiser
173b744ef0
[fix] digg - the ISO time stamp of published date has been changed
...
Error pattern::
Engines cannot retrieve results:
digg (unexpected crash time data '2020-10-16T14:09:55Z' does not match format '%Y-%m-%d %H:%M:%S')
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 20:40:12 +01:00
Alexandre Flament
b00d108673
[mod] pylint: numerous minor code fixes
2020-12-01 15:21:19 +01:00
Alexandre Flament
9ed3ee2beb
[mod] wikidata: WDGeoAttribute class: doesn't change the method signature of get_str
2020-12-01 15:21:17 +01:00
Alexandre Flament
3cfef61123
[fix] /stats: report error percentage instead of error count
...
This bug exists since the PR https://github.com/searx/searx/pull/751
2020-12-01 15:07:09 +01:00
Alexandre Flament
a1e6bc4cee
Merge pull request #2291 from dalf/settings2
...
[enh] user settings can relied on the default settings
2020-12-01 14:57:12 +01:00
Alexandre Flament
f1e016e9ea
[mod] oscar theme: added option into gruntfile.js for generate sourceMap
...
Credits go to @mrwormo (see PR #2308 )
2020-12-01 10:07:01 +01:00
GazoilKerozen
1b700738eb
[fix] fix the reset button in the oscar theme ( #2306 )
...
Rely on javascript instead of type="clear"
Close #2009
2020-11-30 16:30:21 +01:00
Noémi Ványi
4a36a3044d
Add recoll engine ( #2325 )
...
recoll is a local search engine based on Xapian:
http://www.lesbonscomptes.com/recoll/
By itself recoll does not offer web or API access,
this can be achieved using recoll-webui:
https://framagit.org/medoc92/recollwebui.git
This engine uses a custom 'files' result template
set `base_url` to the location where recoll-webui can be reached
set `dl_prefix` to a location where the file hierarchy as indexed by recoll can be reached
set `search_dir` to the part of the indexed file hierarchy to be searched, use an empty string to search the entire search domain
2020-11-30 08:35:15 +01:00
Alexandre Flament
b4b81a5e1a
[enh] settings.yml: add use_default_settings option (2nd version)
2020-11-27 19:40:04 +01:00
M. Efe Çetin
d1f527c3af
Photon API Link Update
...
Via https://photon.komoot.io/
2020-11-27 10:22:28 +03:00
Alexandre Flament
1cfe7f2a75
[enh] settings.yml: add use_default_settings option
...
This change is backward compatible with the existing configurations.
If a settings.yml loaded from an user defined location (SEARX_SETTINGS_PATH or /etc/searx/settings.yml),
then this settings can relied on the default settings.yml with this option:
user_default_settings:True
2020-11-26 18:27:27 +01:00
Alexandre Flament
6ada5bac60
Merge pull request #2327 from renyhp/master
...
Add preference for displaying advanced settings
2020-11-26 17:37:43 +01:00
renyhp
0323606691
Remove unused lines
2020-11-26 17:26:19 +01:00
renyhp
844ae0b310
Fix syntax error
2020-11-26 16:27:46 +01:00
renyhp
4979b4f9d9
Another patch
2020-11-26 15:34:53 +01:00
renyhp
22489c4b5f
Patch advanced search preferences
2020-11-23 19:13:29 +01:00
renyhp
b00f77059c
Add preference for displaying advanced settings
2020-11-22 18:16:43 +01:00
Alexandre Flament
3786920df9
[enh] Add multiple outgoing proxies
...
credits go to @bauruine see https://github.com/searx/searx/pull/1958
2020-11-20 15:29:21 +01:00
Noémi Ványi
80a8bc5ad9
Fix type of unresponsive_engines
...
Previously __get_translated_errors
returned a list. But unresponsive_engines
is a set.
Closes #2305
2020-11-17 23:22:45 +01:00
Markus Heiser
c71d214b0c
[refactor] deviantart - improve results and clean up source code
...
Devian's request and response forms has been changed.
- fixed title
- fixed time_range_dict to 'popular-*-***'
- use image from <noscript> if exists
- drop obsolete "http to https, remove domain sharding"
- use query URL https://www.deviantart.com/search/deviations?page=5&q=foo
- add searx/engines/deviantart.py to pylint check (test.pylint)
Error pattern::
There DEBUG:searx:result: invalid title: {'url': 'https://www.deviantart.com/ ...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-11-14 17:09:56 +01:00
Alexandre Flament
3038052c79
[mod] remove unused import
...
use
from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url # NOQA
so it is possible to easily remove all unused import using autoflake:
autoflake --in-place --recursive --remove-all-unused-imports searx tests
2020-11-14 14:11:02 +01:00
Alexandre Flament
c3d9b17c2a
Merge pull request #2292 from kvch/elasticsearch-engine
...
New engine: Elasticsearch
2020-11-14 13:25:08 +01:00
Alexandre Flament
102c08838b
Merge pull request #2289 from dalf/pylint
...
[mod] pylint: add extension-pkg-whitelist=lxml.etree
2020-11-14 13:24:31 +01:00
Alexandre Flament
46b454277f
Merge pull request #2309 from dalf/mod_search_repr
...
[mod] searx.search: EngineRef, SearchQuery: add __repr__ and __eq__ methods
2020-11-14 13:23:44 +01:00
Alexandre Flament
ebed1461bc
Merge pull request #2300 from dalf/fix-webapp-index
...
[fix] fix of / and /search
2020-11-14 13:23:03 +01:00
Noémi Ványi
43e697681e
New engine: Elasticsearch
2020-11-10 19:53:38 +01:00
Alexandre Flament
8fc74d0d7b
[mod] searx.search: EngineRef, SearchQuery: add __repr__ and __eq__ methods
2020-11-10 10:45:40 +01:00
Alexandre Flament
b3a3ccf2db
[fix] fix of / and /search
...
* URL / : the index page displayed the selected or the default category.
* URL / : when the q parameter is set using the URL, the redirect includes the URL query.
* URL /search : an empty query doesn't raise an exception.
2020-11-06 12:11:52 +01:00
Adam Tauber
063260d090
[enh] add default http headers - closes #715
2020-11-05 16:14:23 +01:00
Adam Tauber
1b42d42695
Merge pull request #2290 from dalf/fix-misc
...
Various bug fixes
2020-11-03 15:12:25 +01:00
Alexandre Flament
58d72f2692
[mod] pylint: minor code change to allow pylint globally
...
This commit is only a step, it doesn't fix all the issues reported by pylint
2020-11-03 11:35:53 +01:00
Alexandre Flament
e28b56e262
[fix] webadapter: fix locked categories
2020-11-03 10:55:49 +01:00
Alexandre Flament
eed43783f9
[fix] comamnd engine: fix import
2020-11-03 10:55:08 +01:00
Alexandre Flament
a08df82574
[fix] scanr_structure engine: fix import
2020-11-03 10:54:02 +01:00
Marc Abonce Seguin
8d71420b45
[mod] separate index and search routes
...
This makes it easier to separately handle search and index requests
from a web server or from a reverse proxy.
If a request to index contains a query, a permanent redirect HTTP response
is returned. This should give some level of backwards compatibility
for users that have set a searx instance in their browser's search bar.
2020-11-02 20:04:03 -07:00
Alexandre Flament
95bd6033fa
[mod] wikidata engine: use one SPARQL request instead of 2 HTTP requests.
2020-10-28 08:09:25 +01:00
Alexandre Flament
ca593728af
[mod] duckduckgo_definitions: display only user friendly attributes / URL
...
various bug fixes
2020-10-28 08:09:25 +01:00
Alexandre Flament
382fded665
[mod] result.py: merge infobox URL and attributes when the same label or the same entity
...
entity are wikidata entity (like "Q42" for "Douglas Adams", see https://www.wikidata.org/wiki/Q42 )
2020-10-28 08:09:25 +01:00
Alexandre Flament
23f4203dfb
[fix] simple theme: infobox: remove useless entity information
2020-10-28 08:09:25 +01:00
Alexandre Flament
ed6696e6bf
[mod] add external_urls.json and wikidata_units.json
2020-10-28 08:09:25 +01:00
Alexandre Flament
5e7060053c
[mod] ahmia_filter.py: minor changes
...
- use result['parsed_url']
- load ahmia_blacklist.txt in searx.datae
2020-10-27 20:00:04 +01:00
Adam Tauber
db703a0283
Merge pull request #565 from MarcAbonce/onions
...
New category: Onions
2020-10-26 14:20:58 +01:00
Adam Tauber
2aef38c3b9
[fix] resolve query_parts regression
2020-10-26 14:15:59 +01:00
Marc Abonce Seguin
32957cdf49
add Ahmia filter plugin for onion results
2020-10-25 17:59:43 -07:00
a01200356
c3daa08537
[enh] Add onions category with Ahmia, Not Evil and Torch
...
Xpath engine and results template changed to account for the fact that
archive.org doesn't cache .onions, though some onion engines migth have
their own cache.
Disabled by default. Can be enabled by setting the SOCKS proxies to
wherever Tor is listening and setting using_tor_proxy as True.
Requires Tor and updating packages.
To avoid manually adding the timeout on each engine, you can set
extra_proxy_timeout to account for Tor's (or whatever proxy used) extra
time.
2020-10-25 17:59:05 -07:00
Noémi Ványi
33e139cae6
Let admins lock user preferences
2020-10-25 18:06:18 +01:00
Nicholas Kegler
8e15d3e4c1
Open Semantic Search Engine
2020-10-25 17:50:00 +01:00
Adam Tauber
aa3c18dda9
[enh] allow searx query parts anywhere in the query - closes #831
2020-10-25 17:40:36 +01:00
Venca24
2b93e70a26
[fix] code style
2020-10-24 09:20:55 +02:00
Venca24
1cbcf2ccb6
[mod] adapt hash plugin to current version of searx
2020-10-23 21:35:13 +02:00
Venca24
40c552c11e
[fix] hash plugin
2020-10-23 21:26:42 +02:00
Venca24
69e5a58058
[fix] code style
2020-10-23 21:26:42 +02:00
Venca24
1ea9438f5d
[fix] hash plugin
2020-10-23 21:25:10 +02:00
Venca24
c9593c8ffd
[enh] add plugin converting strings into hash digests
2020-10-23 21:25:10 +02:00
Noémi Ványi
116f7a6daa
Force admins to set secret_key if debug mode is disabled
...
This commit also enables debug mode for unit tests.
2020-10-09 18:31:42 +02:00
Noémi Ványi
e158eeee4b
Propagate error messages from YouTube API
2020-10-09 17:34:26 +02:00
Adam Tauber
835d16cbb1
Merge pull request #2255 from kvch/yacy-improvements
...
Add yacy improvements: HTTP digest auth, category checking
2020-10-09 16:34:42 +02:00
Alexandre Flament
cfd21bc475
[fix] fix duckduckgo engine
...
- remove paging support: a "vqd" parameter is required between each request. This parameter is uniq for each request
- update the URL (no redirect), use the POST method
- language support: works if there is no more than request per minute, otherwise it is ignored !
2020-10-09 16:00:42 +02:00
Noémi Ványi
72c7fd25fe
Add yacy improvements: HTTP digest auth, category checking
2020-10-09 15:06:05 +02:00
Adam Tauber
a05c660e30
[enh] add ability to set enabled plugins from settings - closes #1613 #778
2020-10-09 14:12:31 +02:00
Noémi Ványi
ce000a9fef
Fix XPATH of lobste.rs engine && add timeout
2020-10-09 12:56:37 +02:00
Adam Tauber
da8b227044
[fix] use base_url everywhere if it is defined in settings.yml
2020-10-08 14:19:09 +02:00
Noémi Ványi
f0278d41fc
add ebay enginte to shopping category
2020-10-08 13:20:55 +02:00
Alexandre Flament
a9dc54bebc
[mod] Add searx.data module
...
Instead of loading the data/*.json in different location,
load these files in the new searx.data module.
2020-10-07 10:29:34 +02:00
Alexandre Flament
e30dc2f0ba
Merge pull request #2247 from dalf/fix-opensearch
...
[fix] opensearch.xml URL contains method and autocomplete parameters
2020-10-07 10:14:57 +02:00
Alexandre Flament
474d56c77f
Merge pull request #2248 from dalf/fix-webadapter
...
[fix] various fixes of searx.webadapter
2020-10-07 10:12:10 +02:00
Alexandre Flament
d5950079cf
[fix] fix searx.webadapter
...
* Fix "?q=test&engines=wikipedia": fix exception
* Fix "?q=test&engines=wikipedia&categories=images": now the engines from images category are included.
* Fix parse_timeout: make sure a value is always returned
* Various typing fixes (searx.webadapter, searx.search.SearchQuery)
2020-10-06 15:23:19 +02:00
Alexandre Flament
8659212f5a
[fix] drop Python 2: use collections.abc.Iterable instead of collections.Iterable
2020-10-06 09:43:24 +02:00
Alexandre Flament
15013e64d8
[fix] drop Python 2: use importlib instead of imp.load_source
...
imp.load_source is not documented in Python 3
see documentation : https://docs.python.org/3/library/importlib.html#importing-a-source-file-directly
partial fix of https://github.com/searx/searx/issues/1674
2020-10-06 09:42:11 +02:00
Alexandre Flament
bfdad7bc0f
[fix] opensearch.xml URL contains method and autocomplete parameters
...
When the user add searx as a search engine, the browser loads the /opensearch.xml URL without the cookies.
Without the query parameters, the user preferences are ignored (method and autocomplete).
In addition, opensearch.xml is modified to support automatic updates,
see https://developer.mozilla.org/en-US/docs/Web/OpenSearch
2020-10-06 00:54:37 +02:00
Alexandre Flament
584760cf54
Merge pull request #2237 from dalf/mod-engines-init
...
Mod engines init
2020-10-05 11:20:46 +02:00
Alexandre Flament
6c39917c4d
[mod] webapp.py: update engines initialization condition
...
Always call initialize engines except on the first run of werkzeug with the reload feature.
the reload feature is activated when:
* searx_debug is True (SEARX_DEBUG environment variable or settings.yml)
* FLASK_APP=searx/webapp.py FLASK_ENV=development flask run (see https://flask.palletsprojects.com/en/1.1.x/cli/ )
Fix SEARX_DEBUG=0 make docs
docs/admin/engines.rst : engines are initialized
See https://github.com/searx/searx/issues/2204#issuecomment-701373438
2020-10-05 11:13:32 +02:00
Alexandre Flament
b728cb610b
Merge pull request #2241 from dalf/move-extract-text-and-url
...
Move the extract_text and extract_url functions to searx.utils
2020-10-04 09:06:20 +02:00
Alexandre Flament
e2cd9b65bb
Merge pull request #2239 from dalf/mod-preferences
...
[mod] preferences.py: check language setting with a regex instead of match_language
2020-10-04 09:05:14 +02:00
Finn
53c8d945b4
[enh] Add SepiaSearch engine ( #2227 )
...
supported_languages values: see https://framagit.org/framasoft/peertube/search-index/-/blob/master/client/src/views/Search.vue#L618-641
2020-10-03 13:00:10 +02:00
Alexandre Flament
8f914a28fa
[mod] searx.utils.normalize_url: remove Yahoo hack
...
* The hack for Yahoo URLs is not necessary anymore. (see searx.engines.yahoo.parse_url)
* move the URL normalization in extract_url to normalize_url
2020-10-03 10:02:50 +02:00
Alexandre Flament
c1d10bde02
[mod] searx/utils.py: add docstring
2020-10-02 18:17:01 +02:00
Alexandre Flament
2006eb4680
[mod] move extract_text, extract_url to searx.utils
2020-10-02 18:13:56 +02:00
Alexandre Flament
507896c115
[mod] preferences.py: check language setting with a regex instead of match_language
2020-10-01 11:29:31 +02:00
Markus Heiser
8162d7aff4
[fix] google engine - div classes has been renamed in HTML reult
...
Since 1. October 2020 google has changed the 'class' attribute of the HTML
result page.
Fix the xpath expressions and ignore <div class="g" ../> sections which do not
match to title's xpath expression.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-10-01 09:44:29 +02:00
Alexandre Flament
9740618227
Merge pull request #2226 from dalf/fix-searx-migration
...
[fix] migration from github.com/asciimoo/searx to github.com/searx/searx : fix URLs
2020-09-29 12:35:11 +02:00
Qt Resynth
246b8cd1a4
[fix] about.html: fix small inconsistencies in about page ( #2219 )
2020-09-28 16:56:25 +02:00
Alexandre Flament
f204e4903d
[fix] migration from github.com/asciimoo/searx to github.com/searx/searx : fix URLs
2020-09-28 16:44:14 +02:00
Adam Tauber
8d47142f35
Merge pull request #2189 from dalf/architecture-clean-up
...
Architecture clean up
2020-09-28 14:56:23 +02:00
Alexandre Flament
93f7f7eee2
[mod] upgrade requests to version 2.24.0. use ssl instead of pyopenssl.
...
requests 2.24.0 uses the ssl module except if it doesn't support SNI, in this case searx fallbacks to pyopenssl.
searx logs a critical message and exit if the ssl modules doesn't support SNI and pyOpenSSL is not installed.
searx logs a critical message and exit if the ssl version is older than 1.0.2.
in requirements.txt, pyopenssl is still required to install searx as a fallback.
2020-09-26 19:30:27 +02:00
Alexandre Flament
f2f3300bde
[mod] more typing
2020-09-24 16:26:00 +02:00
Alexandre Flament
485a502b88
[mod] add typing and __slots__
2020-09-22 19:05:05 +02:00
Alexandre Flament
678699beaf
[mod] searx/webadapter.py: add get_selected_categories share common code with get_search_query_from_webapp
...
Update searx/webapp.py to use get_selected_categories
Close #2142
2020-09-22 18:59:51 +02:00
Alexandre Flament
d5b5e48f04
[mod] searx/webadapter.py: each web parameter has a dedicated function (parse_pageno, page_lang,....).
2020-09-22 18:59:51 +02:00
Alexandre Flament
691d12726b
[mod] check the engine tokens in searx/webadapter.py instead of searx/search.py
2020-09-22 18:59:51 +02:00
Alexandre Flament
eecfff2689
[mod] check time_range parameter in searx/webadapter.py
2020-09-22 18:59:51 +02:00
Alexandre Flament
2929495112
[mod] add searx.search.EngineRef
...
was previously a Dict with two or three keys: name, category, from_bang
make clear that this is a engine reference (see tests/unit/test_search.py for example)
all variables using this class are renamed accordingly.
2020-09-22 18:59:51 +02:00
Alexandre Flament
2dbc0de0cd
[mod] add searx/webadapter.py
...
* move searx.search.get_search_query_from_webapp to searx.webadapter
* move searx.query.SearchQuery to searx.search
2020-09-22 18:59:51 +02:00
Qt Resynth
21dbc7e852
"Egde" → "Edge"
2020-09-22 17:44:32 +02:00
Alexandre Flament
e8df5d3f7f
[mod] searx.search: change function declaration: online then offline then utility functions.
2020-09-22 12:36:26 +02:00
Alexandre Flament
50e717c452
[mod] searx.search: remove unused global variable number_of_searches
2020-09-22 12:36:26 +02:00
Alexandre Flament
edd8dccd07
[mod] searx.query.RawTextQuery: getSearchQuery and changeSearchQuery rename to getQuery and changeQuery
...
getSearchQuery is confusing, the method returns a str not a SearchQuery object
2020-09-22 12:36:26 +02:00
Alexandre Flament
c4067a9d02
[mod] searx.search.Search: split the search method into different methods
2020-09-22 12:14:46 +02:00
Alexandre Flament
ad0758e52a
[mod] add searx/webutils.py
...
contains utility functions and classes used only by webapp.py
2020-09-22 11:57:06 +02:00
Alexandre Flament
f9664037a6
[mod] refactor searx.webapp.get_locale
...
* Log each call to get_locale: display the URL, the locale and the source (browser, preferences, form).
* Rename _get_browser_language to _get_browser_or_settings_language to match the actual code.
2020-09-22 11:49:15 +02:00
Alexandre Flament
2fd582d457
[fix] /autocompleter: return HTTP 400 when q is empty as intent.
...
Fix commit c225db45c8
2020-09-22 11:38:37 +02:00
Marc Abonce Seguin
ecf5899153
fetch google's search langs rather than ui langs
2020-09-22 11:37:44 +02:00
Marc Abonce Seguin
c86504b47a
fix utils/fetch_languages to work with new languages
2020-09-22 11:37:44 +02:00
Marc Abonce Seguin
41800835f9
fetch supported languages for startpage engine
2020-09-22 11:37:44 +02:00
Marc Abonce Seguin
ea9d979cc3
add language names in qwant's fetch languages function
2020-09-22 11:37:44 +02:00
Alexandre Flament
375cbd12b3
Merge pull request #2205 from dalf/fix-simple-theme-autocomplete
...
[fix] simple theme: fix autocomplete
2020-09-19 16:02:01 +02:00
Alexandre Flament
c23401e9fa
[fix] simple theme: fix autocomplete
...
AJAX requests send the X-Requested-With HTTP header,
so searx.webapp.autocompleter returns the results with the expected data format.
Related to #2127
Close #2203
2020-09-19 10:13:05 +02:00
Alexandre Flament
6deb85072a
[fix] searx.utils.HTMLTextExtractor: invalid HTML don't raise an Exception
...
Close #2188
2020-09-13 10:28:11 +02:00
Alexandre Flament
df12ed6e55
[mod] searx.RawTextQuery: the constructor call parse_query
2020-09-12 15:25:58 +02:00
Alexandre Flament
bdac99d4f0
Drop Python 2 (5/n): searx.utils.is_valid_lang, input parameter is a str instead of bytes
...
Fix bug in translated.py and dictzone.py
2020-09-10 10:49:42 +02:00
Dalf
c225db45c8
Drop Python 2 (4/n): SearchQuery.query is a str instead of bytes
2020-09-10 10:49:42 +02:00
Dalf
7888377743
Drop Python 2 (3/n): objects
2020-09-10 10:39:04 +02:00
Dalf
78df10fb55
Drop Python 2 (2/n): templates
2020-09-10 10:39:04 +02:00
Dalf
1022228d95
Drop Python 2 (1/n): remove unicode string and url_utils
2020-09-10 10:39:04 +02:00
Marc Abonce Seguin
7e82817925
wait for img to load before hiding infobox toggle
2020-09-10 09:54:30 +02:00
Marc Abonce Seguin
ab20ca182c
use Wikipedia's REST v1 API
2020-09-10 09:54:30 +02:00
Alexandre Flament
d0f9778c2a
[mod] results.py: code clean up ( #2140 )
2020-09-08 10:09:11 +02:00
Noémi Ványi
f0ca1c3483
[enh] Add command line engines: git grep, find, etc. ( #2128 )
...
A new "base" engine called command is introduced. It is the foundation for all command line engines for now.
You can use this engine to create your own command line engine.
Add some engines (commented out to make sure no one enables anything accidentally):
* git grep: This engine lets you grep in the searx repo.
* locate: If locate is installed and initialized, you can search on the FS.
* find: You can find files with a specific name from where you started searx.
* pattern search in files: This engine utilizes the command fgrep.
* regex search in files: This engine runs `grep` to find a file based on its contents.
2020-09-08 09:51:53 +02:00
Alexandre Flament
3397382754
[enh] stop searx when an engine raise an SyntaxError exception ( #2177 )
...
and some other exceptions:
* KeyboardInterrupt
* SystemExit
* RuntimeError
* SystemError
* ImportError: an engine with an unmet dependency will stop everything.
2020-09-07 15:39:26 +02:00
Scott Wallace
8bcba31e31
Add key to settings.yml for opening result links in a new tab
...
Closes #1552
Closes #444
2020-09-01 18:10:24 +01:00
Adam Tauber
4a913247b2
[enh] add option to configure proxies per engine - closes #1827
2020-09-01 15:59:22 +02:00
Alexandre Flament
b329058c1a
Revert "[enh] test: load each engine to check for syntax errors"
...
This reverts commit 4fb3ed2c63
.
2020-08-31 19:00:06 +02:00
Singustromo
315cdfee09
Added metager-search ( #2139 )
...
* Added metager-search
2020-08-31 18:42:51 +02:00
Adam Tauber
6f9aa0e258
Merge pull request #2160 from dalf/test_load_engine
...
[enh] test: load each engine to check for syntax errors
2020-08-31 14:29:52 +02:00
Adam Tauber
6ded6e7a9a
[fix] skip uncomplete image results - closes #1496
2020-08-31 14:07:45 +02:00
Dalf
4fb3ed2c63
[enh] test: load each engine to check for syntax errors
2020-08-28 12:12:32 +02:00
Marc Abonce Seguin
a2430154b9
fix selects in preferences so they look consistent ( #2150 )
2020-08-27 21:55:47 +02:00
Marc Abonce Seguin
0d8970c8f2
only return one url per "type" in Wikidata ( #2151 )
...
i.e. only one official website, one Twitter, etc.
2020-08-27 21:44:48 +02:00
Adam Tauber
079783e993
[fix] pylint
2020-08-27 14:38:39 +02:00
Adam Tauber
30d16e7ee6
[fix] use base_url for prefix of sharing 'currenly saved preferences' - fixes #1249 by @matejc
2020-08-27 14:29:38 +02:00
Adam Tauber
6278538890
[fix] add search language and time range filter to suggestions - fixes #1314
2020-08-27 14:26:38 +02:00
Émilien Devos
a5e6423c39
[fix] opensearch on chromium for android ( #2132 )
2020-08-18 18:29:58 +02:00
Émilien Devos
27d74826f1
[enh] add yggtorrent engine ( #2135 )
2020-08-18 18:02:41 +02:00
Emilien Devos
c15a91a534
[fix] piratebay engine date and pep8 indentation
2020-08-10 23:44:53 +02:00
Emilien Devos
52d78d8418
[fix] piratebay engine
2020-08-10 20:26:59 +02:00
Adam Tauber
77103c7874
Merge pull request #2116 from mikeri/invidiousres
...
Include author and video length in Invidious results
2020-08-10 12:49:17 +02:00
Adam Tauber
e6d002a730
Merge pull request #2130 from msafadieh/master
...
Make default query submission method configurable
2020-08-10 12:15:45 +02:00
Marc Abonce Seguin
0601f2bb48
add toggle to resize infobox
2020-08-10 00:12:45 -07:00
Marc Abonce Seguin
57bad502a6
add visually-hidden css class to pointhi style
2020-08-09 20:44:26 -07:00
Marc Abonce Seguin
74270a3fc2
add class for infobox's official url
2020-08-09 20:44:26 -07:00
Marc Abonce Seguin
001eb047cd
set max-height on infobox's images
2020-08-09 20:44:26 -07:00
Marc Abonce Seguin
c9c39b3e79
add engine's name in infobox's header
2020-08-09 15:42:55 -07:00
Marc Abonce Seguin
574e99c4de
reduce space between title and url in infobox header
2020-08-09 15:42:55 -07:00
Mohamad Safadieh
8dff74dd1b
Make default query submission method configurable
...
Sending queries through POST, while better for privacy, breaks functionality
with certain extensions (e.g. Firefox containers). Since Firefox does
not send cookies when requesting `/opensearch.xml`, users cannot easily
switch to GET on the client side unless they make a custom search
engine. This commit allows admins to modify the default method on their
side so they can set it to GET if needed.
2020-08-09 17:04:47 -04:00
Mohamad Safadieh
1ea35605d1
Use query params for browser autocomplete
...
Sending query params over GET seems to be the only way to be able to
enable autocomplete in the browser. This commit adds the necessary URL
formatting to opensearch.xml. In order to identify queries coming from
the URL bar (rather than an AJAX request), which requires a different
JSON format and MIME type, the request headers are checked for
"X-Requested-With: XMLHttpRequest" which is added by jQuery request.
2020-08-09 07:59:49 -04:00
Vlad
f678388dbc
Fix google images 'get image' button bug from issue #2103 ( #2115 )
...
Closes #2103
2020-08-08 19:35:22 +02:00
Michael Ilsaas
a1ce141c99
add peertube engine ( #2109 )
2020-08-08 19:22:53 +02:00
Vlad
c3af520c33
Fix search error with query 'random sha256'
2020-08-04 15:47:41 +03:00