Commit Graph

4618 Commits

Author SHA1 Message Date
Solirs
fbb0e9d275 [fix] server side error: escape backslashes in the query highlight_content
Any backslash escapes in the replacement are processed [1], backslashes should
be escaped [2].

[1] https://docs.python.org/3/library/re.html#re.sub
[2] https://docs.python.org/3/library/re.html#re.escape

closes:
- https://github.com/searxng/searxng/issues/2256
- https://github.com/searxng/searxng/issues/2250
2023-03-17 08:46:00 +01:00
searxng-bot
86c3757872 [translations] update from Weblate
32926a19 - 2023-03-15 - return42 <markus.heiser@darmarit.de>
7aabc876 - 2023-03-16 - Linerly <linerly@protonmail.com>
c0ed00f5 - 2023-03-14 - SonoAX <giovanniilgiovo@gmail.com>
6cf287f6 - 2023-03-13 - RhysJones <proladrhys123@outlook.com>
8c4c5f83 - 2023-03-12 - Cavemanly <k.adel.2m@protonmail.com>
dffe61fa - 2023-03-10 - return42 <markus.heiser@darmarit.de>
c7736cac - 2023-03-10 - BalkanMadman <zurabid2016@gmail.com>
e831b8e3 - 2023-03-10 - BalkanMadman <zurabid2016@gmail.com>
ef3c60af - 2023-03-10 - return42 <markus.heiser@darmarit.de>
c046a677 - 2023-03-07 - BalkanMadman <zurabid2016@gmail.com>
142041d6 - 2023-03-05 - return42 <markus.heiser@darmarit.de>
119b51df - 2023-03-05 - return42 <markus.heiser@darmarit.de>
2023-03-17 07:07:53 +00:00
Alexandre Flament
3e9cddc606
rollback test 2023-03-15 19:55:20 +01:00
Alexandre Flament
41ed0ef0c7
test 2023-03-15 19:53:53 +01:00
Markus Heiser
097d092a7f
Merge pull request #2224 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2023-03-15 18:36:29 +01:00
Markus Heiser
85ef1af343
Merge pull request #2222 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2023-03-15 18:35:36 +01:00
Markus Heiser
a7f1649190 [fix] remove duplicate key in simple theme ESLint configuration
Partial merge of [PR-1736]

[PR-1736] https://github.com/searxng/searxng/pull/1736

Suggested-by: @FunctionalHacker in [1]
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-05 09:12:13 +01:00
Markus Heiser
150a90c84e [fix] fix threshold in replace_auto_language
[1] https://github.com/searxng/searxng/pull/2027#pullrequestreview-1322157677
[2] https://github.com/searxng/searxng/pull/1969#issuecomment-1345354529

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-05 08:29:58 +01:00
searxng-bot
1f36fc3a45 [translations] update from Weblate
0d8ebfe1 - 2023-03-02 - AHOHNMYC <lqwh2h2cwa@protonmail.com>
1358dd6d - 2023-03-03 - mystery-z <07juwonc@kakao.com>
4d8c13db - 2023-03-01 - lhostfree951 <freeehost9191@gmail.com>
1ae581b6 - 2023-02-28 - tygyh <jonis9898@hotmail.com>
0003698f - 2023-02-28 - ewm <gnu.ewm@protonmail.com>
31c79617 - 2023-02-28 - gjveld <gjveld@gmail.com>
9015ec73 - 2023-02-28 - gallegonovato <fran-carro@hotmail.es>
03619a68 - 2023-02-25 - BalkanMadman <zurabid2016@gmail.com>
fa90585b - 2023-02-25 - BalkanMadman <zurabid2016@gmail.com>
c902c5e5 - 2023-02-26 - tentsbet <remendne@pentrens.jp>
2023-03-03 07:08:08 +00:00
Alexandre Flament
714e83d5ea
Merge pull request #2220 from Solirs/gentoo_engine_timeout
Increase timeout for gentoo wiki engine
2023-03-01 17:57:21 +01:00
Alexandre Flament
1632f18631
Merge pull request #2227 from searxng/update_data_update_engine_descriptions.py
Update searx.data - update_engine_descriptions.py
2023-03-01 17:52:57 +01:00
Alexandre Flament
5bbbb14b62
Merge pull request #2226 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2023-03-01 17:52:02 +01:00
dalf
5042d94dea Update searx.data - update_engine_descriptions.py 2023-03-01 01:48:22 +00:00
dalf
e30a45812f Update searx.data - update_ahmia_blacklist.py 2023-03-01 01:38:07 +00:00
dalf
935415bfcf Update searx.data - update_currencies.py 2023-03-01 01:37:46 +00:00
dalf
ccd00518fd Update searx.data - update_firefox_version.py 2023-03-01 01:37:42 +00:00
dalf
d7f10909fa Update searx.data - update_wikidata_units.py 2023-03-01 01:37:25 +00:00
Solirs
35fbb3578b Increase timeout for gentoo wiki engine 2023-02-28 13:54:44 +01:00
Alexandre Flament
d669da81fb
Merge pull request #2027 from dalf/fix_2018
Add "auto" as a language.
2023-02-20 12:17:38 +01:00
searxng-bot
297e463e49 [translations] update from Weblate
8ff0fa33 - 2023-02-19 - return42 <markus.heiser@darmarit.de>
2023-02-19 11:46:59 +00:00
Markus Heiser
0b1444b61e [doc] improved docs of implementations for automatic speech recognition
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-19 10:09:52 +00:00
Markus Heiser
363203c579
Merge pull request #2201 from return42/fix-2190
[doc] slight improvements to the doc of the settings (base_url)
2023-02-18 18:21:14 +01:00
Alexandre Flament
6748e8e2d5 Add "Auto-detected" as a language.
When the user choose "Auto-detected", the choice remains on the following queries.
The detected language is displayed.

For example "Auto-detected (en)":
* the next query language is going to be auto detected
* for the current query, the detected language is English.

This replace the autodetect_search_language plugin.
2023-02-17 15:17:36 +00:00
Markus Heiser
bb83036f48 [fix] typo in searx/plugins/tor_check.py
Related: https://github.com/searxng/searxng/pull/2189

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-17 13:09:14 +01:00
Markus Heiser
5820dc78ce [doc] slight improvements to the doc of the settings (base_url)
Closes: https://github.com/searxng/searxng/issues/2190

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-17 12:08:58 +01:00
Markus Heiser
52f6bc745b
Merge pull request #2188 from ahmad-alkadri/fix/petalsearch
Fix the petalsearch engine
2023-02-15 13:57:28 +01:00
Markus Heiser
ba5b6c382f
Merge pull request #2192 from return42/fix-tineye
[mod] disbale engine tineye by default
2023-02-15 06:43:41 +01:00
Ahmad Alkadri
f6af59899b Fix petalsearch and remove petalsearch news 2023-02-14 18:43:55 +01:00
Allan Nordhøy
2be373a18f [fix] spelling: Tor, SearXNG 2023-02-14 17:13:53 +01:00
Markus Heiser
7d446dfdb2 [mod] disbale engine tineye by default
Tineye becomes active as soon as a https:// signature is found in the search
term, but most of the time a reverse image search is not requested when a URL is
specified, often the URL is just from a C&P.

The frequent requests to tineye lead in the end to the SearXNG instance being
blocked by tineye and the user seeing unexpected error messages.

BTW: many maintainers have disabled this engine in their local SearXNG settings.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-14 08:27:19 +01:00
Markus Heiser
3abff182ea [fix] remove engine neeva from settings.yml
Engine is broken and can't by used any longer as a simple XPath engine.
@allendema tested a engines/neeva.py version using json from the dom, but
without luck: There was some kind of captcha for pagination.

[1] https://github.com/searxng/searxng/issues/2007#issuecomment-1426061698

Closes: https://github.com/searxng/searxng/issues/2007
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-10 18:46:37 +01:00
Lea
a530ac4099 fix: typo in suggestions 2023-02-10 15:33:25 +01:00
Markus Heiser
415f6398d6 [fix] time_range in HTML form should not be a string 'None'
Before this patch SearXNG returns 'time_range': 'None'::

    <form method="GET" action="/searx/search">
      ...
      <input type="hidden" name="time_range" value="None">
      ...
    </form>

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-10 15:32:21 +01:00
wibyweb
6707354bc8 [mod] engine wiby: add pagination
Suggested by: @wibyweb in searx https://github.com/searx/searx/pull/3465

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-10 15:31:24 +01:00
Markus Heiser
4c06837a50 [mod] make python code pylint 2.16.1 compliant
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-10 13:59:21 +01:00
Markus Heiser
7320b0c796
Merge pull request #2130 from searxng/translations_update
Update translations
2023-02-04 17:53:20 +01:00
dependabot[bot]
a5a73d77b3
Bump grunt from 1.5.3 to 1.6.1 in /searx/static/themes/simple
Bumps [grunt](https://github.com/gruntjs/grunt) from 1.5.3 to 1.6.1.
- [Release notes](https://github.com/gruntjs/grunt/releases)
- [Changelog](https://github.com/gruntjs/grunt/blob/main/CHANGELOG)
- [Commits](https://github.com/gruntjs/grunt/compare/v1.5.3...v1.6.1)

---
updated-dependencies:
- dependency-name: grunt
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-04 08:10:18 +00:00
Markus Heiser
257dc7d6c4 [fix-2146] set different HTTP Referer header to DuckDuckGo requests
For what ever reasons, ddg-lite don't like the Referer

  https://lite.duckduckgo.com/

In an interactive session in the WEB browser the the Reverer has exactly this
value, but ddg-lite don't like this value when the request is build up by
SearXNG.  The new value is:

  https://google.com/

What fakes a user comes from a google link.

Related: https://github.com/searxng/searxng/pull/2081
Closes: https://github.com/searxng/searxng/issues/2146

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-02-03 08:45:51 +01:00
searxng-bot
8db35f8e9c [translations] update from Weblate
009d48c2 - 2023-02-01 - tygyh <jonis9898@hotmail.com>
a5353bad - 2023-02-01 - Mooo <moose@mail.ru>
1617f458 - 2023-01-28 - emirhan <xemirhankoc@gmail.com>
79bc60f4 - 2023-01-29 - ewm <gnu.ewm@protonmail.com>
2023-02-03 07:15:25 +00:00
Alexandre Flament
9d102fb08f
Merge pull request #2132 from dalf/update_pr_1967
search.suspended_time settings: bug fixes
2023-01-29 20:48:43 +01:00
Markus Heiser
feccee01c0 [doc] Add doc-strings to searx.exceptions
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-01-29 19:06:19 +01:00
Markus Heiser
4f808088f1
Merge pull request #2139 from dalf/fix_update_languages
Fix update languages
2023-01-29 17:59:59 +01:00
Markus Heiser
d989c9429f
Merge pull request #2134 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2023-01-29 17:59:40 +01:00
Markus Heiser
5c2667b956
Merge pull request #2135 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2023-01-29 17:59:03 +01:00
Markus Heiser
e6a17f2fae
Merge pull request #2136 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2023-01-29 17:58:22 +01:00
Markus Heiser
c4cbf8829a
Merge pull request #2137 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2023-01-29 17:57:56 +01:00
Alexandre Flament
bfca63c536 wikipedia engine: update _fetch_supported_languages
the layout https://meta.wikimedia.org/wiki/List_of_Wikipedias has changed
2023-01-29 10:01:58 +00:00
Alexandre Flament
8256de2fe8 peertube engine: update _fetch_supported_languages
There is now an API to get the list of supported languages
https://docs.joinpeertube.org/api-rest-reference.html#tag/Video/operation/getLanguages
2023-01-29 10:01:54 +00:00
dalf
f900e33092 Update searx.data - update_engine_descriptions.py 2023-01-29 01:33:29 +00:00
dalf
dafe026815 Update searx.data - update_currencies.py 2023-01-29 01:24:14 +00:00
dalf
47435be70b Update searx.data - update_firefox_version.py 2023-01-29 01:23:43 +00:00
dalf
53a4a90d0c Update searx.data - update_wikidata_units.py 2023-01-29 01:23:42 +00:00
dalf
9dd95457a9 Update searx.data - update_ahmia_blacklist.py 2023-01-29 01:23:42 +00:00
Alexandre Flament
37addec69e search.suspended_time settings: bug fixes
* fix type in settings.yml: replace suspend_times by suspended_times
* always use delay defined in settings.yml:
  * HTTP status 402 and 403: read the value from settings.yml instead of using the hardcoded value of 1 day.
  * startpage engine: CAPTCHA suspend the engine for one day instead of one week
2023-01-28 10:24:14 +00:00
Alexandre Flament
28356f4284
Merge pull request #2115 from searxng/dependabot/pip/master/flask-babel-3.0.0
Bump flask-babel from 2.0.0 to 3.0.0
2023-01-27 10:43:17 +01:00
mrpaulblack
b3883dc395 [build] /static 2023-01-23 23:00:38 +01:00
mrpaulblack
8ead23347f [fix] use input elements for pagination requests
* use html input elements instead of buttons for the pagination forms at the bottom of the result page
* move the less section that hides the pagination number widget on mobile to the mobile section
* clean up the less code for styling the numbers of the pagination widget
* fix: add the margin for box results (like in news category) to the bottom of the result to have a margin between pagination widget and article result
2023-01-23 22:56:55 +01:00
llmII
d2b2300ee1 Feature: Pagination Widget with list of numbers.
Adds to the navigation widget, preserving forward/backward nav, and
inserting a list of clickable page numbers between them.

Phone sized devices continue without this widget as deterministic
display under small screen sizes has not been solved.

The widget is agnostic to the actual amount of pages there are that one
can navigate to and as such shows all plausible, albeit not necessarilly
valid, possibilities.

This widget does not interfere with infinite scroll in any fashion.
2023-01-23 21:22:06 +01:00
Alexandre Flament
06b5068a2e SearXNG version: YYYY.MM.DD without leading zero 2023-01-22 10:45:00 +00:00
Alexandre Flament
a9d6f7532a weblate: migration to https://translate.codeberg.org/ 2023-01-21 15:45:12 +00:00
searxng-bot
6e4c8b3516 [translations] update from Weblate 2023-01-20 11:32:23 +00:00
Alexandre Flament
f759a84af4 SearXNG version: fix make docker
continuation of #2117
related to #2111

This commit:
* fixes the Docker tag using an additional variable DOCKER_TAG, see searx/version.py
* fixes the Docker labels org.label-schema.vcs-ref and org.opencontainers.image.revision
* adds searx/version_frozen to .gitignore
2023-01-20 10:46:00 +00:00
dependabot[bot]
70fff2ebf1 Bump flask-babel from 2.0.0 to 3.0.0
Bumps [flask-babel](https://github.com/python-babel/flask-babel) from 2.0.0 to 3.0.0.
- [Release notes](https://github.com/python-babel/flask-babel/releases)
- [Changelog](https://github.com/python-babel/flask-babel/blob/master/CHANGELOG)
- [Commits](https://github.com/python-babel/flask-babel/compare/v2.0.0...v3.0.0)

---
updated-dependencies:
- dependency-name: flask-babel
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-20 09:38:30 +00:00
Alexandre Flament
0515f2974b Version number follows PEP440 : replace - by +
Close #2111
2023-01-20 09:05:44 +00:00
Alexandre Flament
6d72ef3cbe
Merge pull request #2109 from ahmad-alkadri/fix/highlight-full-word
Standalone words highlighting for query result in non-CJK characters
2023-01-17 23:24:04 +01:00
Alexandre Flament
13b0c251c4
Merge pull request #2100 from nexryai/master
Add goo engine
2023-01-15 23:08:28 +01:00
ahmad-alkadri
99b5272d9a A little fix and modified the testing for content highlight 2023-01-15 16:51:31 +01:00
Léon Tiekötter
0cedb1c6d8 Add search.suspended_times settings
Make suspended_time changeable in settings.yml
Allow different values to be set for different exceptions.

Co-authored-by: Alexandre Flament <alex@al-f.net>
2023-01-15 09:00:32 +00:00
ahmad-alkadri
6c421110b5 Perso branch - added cjk check and enclosement 2023-01-14 23:00:08 +00:00
searxng-bot
3e5ea08504 [translations] update from Weblate
6a57ee0b - 2023-01-11 - Markus Heiser <markus.heiser@darmarit.de>
b180a810 - 2023-01-06 - Nik Drešar <nik.dresar@gmail.com>
8710174a - 2023-01-11 - Markus Heiser <markus.heiser@darmarit.de>
529a2591 - 2023-01-08 - Markus Heiser <markus.heiser@darmarit.de>
a254bd01 - 2023-01-08 - Markus Heiser <markus.heiser@darmarit.de>
860c3fce - 2023-01-11 - Markus Heiser <markus.heiser@darmarit.de>
c140fb52 - 2023-01-06 - Markus Heiser <markus.heiser@darmarit.de>
2023-01-13 07:14:55 +00:00
nexryai
4e7bb1bf9a
Add goo engine 2023-01-12 16:28:09 +09:00
Ahmad Alkadri
7fc8d72889 [fix] bing: parsing result; check to see if the element contains links
This patch is to hardening the parsing of the bing response:

1. To fix [2087] check if the selected result item contains a link, otherwise
   skip result item and continue in the result loop.  Increment the result
   pointer when a result has been added / the enumerate that counts for skipped
   items is no longer valid when result items are skipped.

   To test the bugfix use:   ``!bi :all cerbot``

2. Limit the XPath selection of result items to direct children nodes (list
   items ``li``) of the ordered list (``ol``).

   To test the selector use: ``!bi :en pontiac aztek wiki``

   .. in the result list you should find the wikipedia entry on top,
   compare [2068]

[2087] https://github.com/searxng/searxng/issues/2087
[2068] https://github.com/searxng/searxng/issues/2068
2023-01-09 15:08:24 +01:00
Milad-Laly
cf4db4be37 [fix] Mojeek Xpath showing suggestions and searches + add lang support 2023-01-09 09:33:47 +01:00
Markus Heiser
54e63839db
Merge pull request #2088 from llmII/fix-suggestions
Fix #2083
2023-01-08 18:53:32 +01:00
Markus Heiser
9d6b048fba [build] /static 2023-01-08 18:39:37 +01:00
llmII
33d97fd01a Fix #2083
This changes the Suggestions to be a single column, not a wrapping row,
changing the input to be incapable of overflowing into visually adjacent
elements.
2023-01-08 10:44:58 -06:00
allixx
1407a055b2 [simple theme] set tab index for search page input field #1891
Previously it took five tab keypresses to reach search input field
on search results page. Now one tab press is enough.
2023-01-08 13:41:48 +03:00
ahmad-alkadri
9ee99423fe [fix] Bing-Web engine: XPath to get the wikipedia result
Modify the XPath selector to get the wikipedia result plus small fixes.

About result content: especially with the Wikipedia result, we'd get several
paragraph elements, only the first paragraph would be taken and displayed on the
search result
2023-01-08 09:11:16 +01:00
Markus Heiser
4e355564d2
Merge pull request #1903 from LalleSX/patch-1
Added info about adding the enginge to the brownser
2023-01-07 15:03:12 +01:00
PrivateLalle
212acf7f7b [mod] about page: add information about adding enginge to the brownser 2023-01-07 14:48:06 +01:00
Markus Heiser
4cd3be8964 [fix] indentation and line size of the the markdown files
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-01-07 14:46:31 +01:00
Markus Heiser
b2a80347e3 [build] /static 2023-01-07 11:53:51 +01:00
ahmad-alkadri
db70c262c3 Add flex-wrap to the list of engines 2023-01-07 11:53:05 +01:00
Rudis Muiznieks
128b8c7f0a
Add HTTP Referer header to DuckDuckGo requests
closes #2080
2023-01-06 16:07:37 -06:00
Markus Heiser
b241015e93
Merge pull request #2078 from searxng/dependabot/pip/master/pygments-2.14.0
Bump pygments from 2.13.0 to 2.14.0
2023-01-06 08:40:46 +01:00
Markus Heiser
e9a7a6aea6 [build] /static 2023-01-06 08:35:52 +01:00
searxng-bot
2420ab6fc3 [translations] update from Weblate
b1c60c5b - 2022-12-30 - wldkwl <gayisurdad@hotmail.com>
89133548 - 2023-01-05 - Linerly <linerly@protonmail.com>
4398061a - 2023-01-02 - Markus Heiser <markus.heiser@darmarit.de>
9857916a - 2023-01-04 - p6n7l <nichita@tutanota.com>
0ba50078 - 2023-01-04 - Markus Heiser <markus.heiser@darmarit.de>
0189e648 - 2023-01-02 - Markus Heiser <markus.heiser@darmarit.de>
24ded833 - 2023-01-01 - Markus Heiser <markus.heiser@darmarit.de>
2023-01-06 07:14:08 +00:00
searxng-bot
38c22c8c31 [translations] update from Weblate
ea56f7b6 - 2022-12-26 - Sean Botha <seanbotha@gmail.com>
0dbbb031 - 2022-12-23 - gkkulik <gregorykkulik@gmail.com>
81f33cb7 - 2022-12-28 - Markus Heiser <markus.heiser@darmarit.de>
5ff82460 - 2022-12-28 - peterT1D <kozlovic.peter@gmail.com>
0ea6d8c3 - 2022-12-28 - Markus Heiser <markus.heiser@darmarit.de>
b19bb597 - 2022-12-28 - Markus Heiser <markus.heiser@darmarit.de>
904fa9ab - 2022-12-24 - Markus Heiser <markus.heiser@darmarit.de>
e7c7d624 - 2022-12-29 - Droid <droidpy587@gmail.com>
2022-12-30 07:14:21 +00:00
dalf
0639769274 Update searx.data - update_firefox_version.py 2022-12-29 09:17:56 +01:00
Markus Heiser
174e6851b3
Merge pull request #2054 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2022-12-29 08:35:51 +01:00
Markus Heiser
d531f89316
Merge pull request #2057 from searxng/update_data_update_engine_descriptions.py
Update searx.data - update_engine_descriptions.py
2022-12-29 08:31:19 +01:00
Markus Heiser
76cd808a49
Merge pull request #2053 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-12-29 08:28:19 +01:00
dalf
000734cb93 Update searx.data - update_engine_descriptions.py 2022-12-29 01:25:31 +00:00
dalf
36eea5b7cc Update searx.data - update_currencies.py 2022-12-29 01:16:59 +00:00
dalf
66780efda7 Update searx.data - update_wikidata_units.py 2022-12-29 01:16:59 +00:00
dalf
de793fb71e Update searx.data - update_ahmia_blacklist.py 2022-12-29 01:16:52 +00:00
Alexandre Flament
0d4896170f
Merge pull request #2047 from dalf/fasttext-predict
Use fasttext-predict instead of fasttext(-wheel)
2022-12-26 20:50:09 +01:00
Alexandre Flament
f3515041af Lazy load fasttext-predict 2022-12-26 18:44:23 +00:00
searxng-bot
dd125321e4 [translations] update from Weblate
7f3e72fd - 2022-12-20 - Grey <elohim@gmail.com>
5d48e556 - 2022-12-21 - Markus Heiser <markus.heiser@darmarit.de>
56e67eb0 - 2022-12-19 - zDylant <dylantfcs@gmail.com>
28e1abe1 - 2022-12-21 - Markus Heiser <markus.heiser@darmarit.de>
b19d55f7 - 2022-12-17 - YaoSiQian <2229561981@qq.com>
274f7ee9 - 2022-12-17 - Markus Heiser <markus.heiser@darmarit.de>
ab00649b - 2022-12-16 - tents <remendne@pentrens.jp>
2022-12-23 07:14:39 +00:00
Rudis Muiznieks
6804ff048d
Fix: add trailing slash to duckduckgo url
Close #1854
2022-12-22 07:49:58 -06:00
ArtikusHG
735e388cec
Merge branch 'master' into fasttext 2022-12-16 19:43:10 +00:00
ArtikusHG
1f8f8c1e91 Replace langdetect with fasttext 2022-12-16 21:07:39 +02:00
Alexandre Flament
2a51c85672
Merge pull request #1974 from fehho/query-string-deserial
[fix] Deserialize preferences which are explicitly blank strings
2022-12-16 18:56:30 +01:00
searxng-bot
03ce848e04 [translations] update from Weblate
4cf39dae - 2022-12-14 - Markus Heiser <markus.heiser@darmarit.de>
f67457cf - 2022-12-12 - Linerly <linerly@protonmail.com>
dee211c2 - 2022-12-12 - JohnyPeaN <johnypean@gmail.com>
9eeb4290 - 2022-12-12 - Markus Heiser <markus.heiser@darmarit.de>
2022-12-16 07:15:19 +00:00
Alexandre Flament
9e9f57e48b
Merge pull request #1954 from dalf/fix.redis.init.2
[fix] follow up of PR-1856
2022-12-14 07:08:19 +01:00
Markus Heiser
ed901ab18e [mod] improve 'Autodetect search language' plugin
- Add documentation to the plugin
- Harmonize FastText language model with SearXNG's language model

Reosurces::

    import fasttext                                    # --> +10 MB
    fasttext.load_model(str(data_dir / 'lid.176.ftz')) # --> +4MB

Suggested-by: @dalf

- To speed up and simplify the deployment use fasttext-wheel instead of fasttext
- Building numpy on the Alpine Linux of docker-images takes ages --> install
  py3-numpy from Alpines package manager (apk)
- Alpine Linux on docker-images (musl libc) do not support fasttext-wheel (gnu
  libc) --> patch Dockerfile and build from fastetxt:

     sed -i s/fasttext-wheel/fasttext/ requirements.txt

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-12-11 11:26:07 +01:00
ArtikusHG
9925a20950 [mod] new plugin: Autodetect search language 2022-12-10 13:11:47 +01:00
Alexandre Flament
b971167ced move searx.shared.redisdb to searx.redisdb 2022-12-10 09:26:38 +01:00
Alexandre Flament
34e260f88f [fix] follow up of PR-1856
- the environment variable SEARXNG_REDIS_URL overrides the setting value redis.url
- ./manage sets SEARXNG_REDIS_URL to unix:///usr/local/searxng-redis/run/redis.sock if:
   - the socket exists
   - SEARXNG_REDIS_URL is not already defined

Update of PR #1856

Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2022-12-10 09:26:38 +01:00
searxng-bot
759d53c892 [translations] update from Weblate
1b4600d0 - 2022-12-08 - JohnyPeaN <johnypean@gmail.com>
e3b49827 - 2022-12-04 - Markus Heiser <markus.heiser@darmarit.de>
975217cf - 2022-12-02 - Markus Heiser <markus.heiser@darmarit.de>
2022-12-09 07:15:14 +00:00
Alexandre Flament
269326063a Fix: don't crash when engine or name is missing in settings.yml
SearXNG crashes if the engine or name fields are missing.
With this commit, the app displays an error in the log and keeps loading.

Close #1951
2022-12-04 23:43:59 +01:00
searxng-bot
f40d1c0004 [translations] update from Weblate
cc5cf5d8 - 2022-11-30 - Chathura madusanka <mcchathuer216@gmail.com>
97776fbf - 2022-11-29 - Markus Heiser <markus.heiser@darmarit.de>
c3c9f988 - 2022-11-29 - Markus Heiser <markus.heiser@darmarit.de>
a1cf339e - 2022-11-29 - Markus Heiser <markus.heiser@darmarit.de>
4429167c - 2022-11-25 - Markus Heiser <markus.heiser@darmarit.de>
2022-12-02 07:15:43 +00:00
Ryan Kaskel
e19218c6a9
Copy client connection kwargs before mutating 2022-11-29 12:15:18 +00:00
Markus Heiser
a8359dd4d3
Merge pull request #1981 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2022-11-29 07:48:26 +01:00
Markus Heiser
1b2f1c17f6
Merge pull request #1982 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2022-11-29 07:47:52 +01:00
Markus Heiser
3579a38a2d
Merge pull request #1983 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2022-11-29 07:46:49 +01:00
Markus Heiser
82af2f4460
Merge pull request #1984 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-11-29 07:45:51 +01:00
dalf
a508cdbd4b Update searx.data - update_engine_descriptions.py 2022-11-29 01:34:42 +00:00
dalf
c4512cf64d Update searx.data - update_ahmia_blacklist.py 2022-11-29 01:24:48 +00:00
dalf
b0b45fd2d0 Update searx.data - update_currencies.py 2022-11-29 01:24:39 +00:00
dalf
a9be73b4da Update searx.data - update_wikidata_units.py 2022-11-29 01:24:38 +00:00
dalf
9fc72419e1 Update searx.data - update_firefox_version.py 2022-11-29 01:24:35 +00:00
searxng-bot
981a2c9626 [translations] update from Weblate
c13727fc - 2022-11-21 - MSI Shafik <shafik.te@gmail.com>
21f638f6 - 2022-11-19 - Markus Heiser <markus.heiser@darmarit.de>
b8ed9e1c - 2022-11-24 - Markus Heiser <markus.heiser@darmarit.de>
2022-11-25 07:16:11 +00:00
fehho
7cab51f98f Deserialize explicitly blank strings
Default behavior of urllib.parse_qs is to discard blank values, causing a preference of none to be deserialized as undefined, using the instance default rather than the selected preference.
2022-11-24 13:14:12 -06:00
searxng-bot
9d06115d07 [translations] update from Weblate
7569f266 - 2022-11-18 - Markus Heiser <markus.heiser@darmarit.de>
6418da9a - 2022-11-18 - mikni <mikni@proton.me>
acc0dc1a - 2022-11-18 - Markus Heiser <markus.heiser@darmarit.de>
6c2beba6 - 2022-11-19 - Alexandre Flament <alex@al-f.net>
b49457e3 - 2022-11-18 - Markus Heiser <markus.heiser@darmarit.de>
2022-11-19 16:21:15 +00:00
searxng-bot
7a39952558 [translations] update from Weblate
f123be21 - 2022-11-13 - Markus Heiser <markus.heiser@darmarit.de>
fa2cfa8f - 2022-11-13 - Markus Heiser <markus.heiser@darmarit.de>
2022-11-18 07:17:51 +00:00
Émilien Devos
46ad32343a Switch back to protobuf for raw HTML 2022-11-11 07:39:48 +00:00
ngosang
78be4b4c70 Fix Google search engine.
- Fix broken links. Resolves #1794
- Fix missing results. Resolves #1829
2022-11-11 07:34:19 +01:00
Ryan Draga
408200c87e [fix] disabling zlibrary due to z-lib.org domain seizure 2022-11-10 21:18:21 +01:00
Markus Heiser
ee4475ff4b
Merge pull request #1934 from dalf/fix_user_agent
User agent: don't include the patch number in the Firefox version
2022-11-09 06:50:33 +01:00
Alexandre FLAMENT
73b5a58d9e [FIX] Redis initialization
redis.Redis.from_url(url) doesn't check if the url is valid

Before this commit: actual error are detected later when the client is actually used.
With this commit, client() makes sure to return a valid Redis client or None.

Also, the code makes sure not to log the password of the Redis URL
2022-11-07 22:08:32 +00:00
Alexandre Flament
8f19bdaf17
Merge pull request #1882 from fehho/metacpan
Add MetaCPAN engine
2022-11-07 21:54:11 +01:00
fehho
fe351c2802 Add MetaCPAN engine 2022-11-07 08:07:06 -06:00
Evhorizon
1517724615
Update network.py 2022-11-06 20:35:30 +01:00
Alexandre Flament
2dc5c0e1d6
Merge pull request #1928 from searxng/translations_update
Update translations
2022-11-06 11:29:28 +01:00
Alexandre Flament
4fe5463671
Merge pull request #1869 from vgerak/1836-ddg-weather
Fix floating point format in DDG weather humidity
2022-11-05 22:46:50 +01:00
Alexandre FLAMENT
d8dee21277 searx.locale: add Dhivehi language 2022-11-05 21:26:15 +00:00
Alexandre FLAMENT
20d951fc5c searx.locales: improve support for languages not supported by babel
* refactor get_translations() to rely on ADDITIONAL_TRANSLATIONS and LOCALE_BEST_MATCH
* update RTL_LOCALES for languages in ADDITIONAL_TRANSLATIONS
2022-11-05 21:26:07 +00:00
Alexandre Flament
e473addaff User agent: don't include the patch number in the Firefox version
The Firefox version in the user agent doesn't include the patch version: 106.0 not 106.0.2

Close #1914
2022-11-05 22:04:37 +01:00
Alexandre FLAMENT
e92755d358 Initialize Redis in searx/webapp.py
settings.yml:
* The default URL was unix:///usr/local/searxng-redis/run/redis.sock?db=0
* The default URL is now "false"

The default URL makes the log difficult to deal with:
if the admin didn't install a Redis instance, the logs record a false error.

It worked before because SearXNG initialized the Redis connection when the limiter started.

In this commit, SearXNG initializes Redis in searx/webapp.py
so various components can use Redis without taking care of the initialization step.
2022-11-05 17:45:52 +01:00
Alexandre Flament
fe419e355b The checker requires Redis
Remove the abstraction in searx.shared.SharedDict.
Implement a basic and dedicated scheduler for the checker using a Redis script.
2022-11-05 12:04:50 +01:00
searxng-bot
7438e48d13 [translations] update from Weblate
41ebf8e7 - 2022-10-31 - Landhoo School Students <landhooschoolstudents@gmail.com>
1de65e6a - 2022-10-29 - Markus Heiser <markus.heiser@darmarit.de>
fff11c22 - 2022-10-30 - Markus Heiser <markus.heiser@darmarit.de>
f677049f - 2022-10-30 - Markus Heiser <markus.heiser@darmarit.de>
ebf69b4a - 2022-10-30 - Markus Heiser <markus.heiser@darmarit.de>
a21b6221 - 2022-11-02 - Markus Heiser <markus.heiser@darmarit.de>
ac384800 - 2022-11-03 - ptomljanovic <phill2605@gmail.com>
c4736fd4 - 2022-11-03 - alexfs2015 <alex04fs@gmail.com>
1b967129 - 2022-10-31 - Landhoo School Students <landhooschoolstudents@gmail.com>
2022-11-04 07:18:35 +00:00
Markus Heiser
fc9986de0a
Merge pull request #1905 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-10-29 08:22:43 +02:00
Markus Heiser
3f1d594c23
Merge pull request #1906 from searxng/update_data_update_external_bangs.py
Update searx.data - update_external_bangs.py
2022-10-29 08:21:33 +02:00
Markus Heiser
a9deead102
Merge pull request #1907 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2022-10-29 08:20:53 +02:00
Markus Heiser
d49ccb54ea
Merge pull request #1908 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2022-10-29 08:20:27 +02:00
Markus Heiser
fa59ff9b78
Merge pull request #1909 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2022-10-29 08:19:56 +02:00
dalf
e70589c598 Update searx.data - update_engine_descriptions.py 2022-10-29 01:56:57 +00:00
dalf
985a2a87a6 Update searx.data - update_currencies.py 2022-10-29 01:46:40 +00:00
dalf
c0ecc2f865 Update searx.data - update_wikidata_units.py 2022-10-29 01:46:38 +00:00
dalf
c24abc2f8c Update searx.data - update_firefox_version.py 2022-10-29 01:46:34 +00:00
dalf
f0c7898445 Update searx.data - update_external_bangs.py 2022-10-29 01:46:27 +00:00
dalf
799c5270ae Update searx.data - update_ahmia_blacklist.py 2022-10-29 01:46:24 +00:00
Markus Heiser
5a181ea1f5
Merge pull request #1901 from searxng/dependabot/npm_and_yarn/searx/static/themes/simple/master/svgo-3.0.0
Bump svgo from 2.8.0 to 3.0.0 in /searx/static/themes/simple
2022-10-28 10:22:56 +02:00
Markus Heiser
d913f0d8aa [build] /static 2022-10-28 10:17:56 +02:00
searxng-bot
bc3db6fd16 [translations] update from Weblate
bf52cdbc - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
fbb36c76 - 2022-10-22 - forvirretfrukt <lillelilli87@gmail.com>
18cc8a36 - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
7314d2b6 - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
b25147b9 - 2022-10-27 - Markus Heiser <markus.heiser@darmarit.de>
d39ade65 - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
cb835cdc - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
563f4e0b - 2022-10-26 - Markus Heiser <markus.heiser@darmarit.de>
a698a2e9 - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
df5ce281 - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
55b369a3 - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
3eddf243 - 2022-10-24 - zaioti <zaioti@tuta.io>
edd3871d - 2022-10-24 - zaioti <zaioti@tuta.io>
5aab9f7b - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
0b2cfe68 - 2022-10-22 - tents <remendne@pentrens.jp>
732b7865 - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
d652c20f - 2022-10-22 - Markus Heiser <markus.heiser@darmarit.de>
0bcaaa8d - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
6fd87821 - 2022-10-26 - Markus Heiser <markus.heiser@darmarit.de>
618f213c - 2022-10-21 - Masterix <masterix@duck.com>
30d38ee9 - 2022-10-24 - Markus Heiser <markus.heiser@darmarit.de>
a934ce3b - 2022-10-23 - Markus Heiser <markus.heiser@darmarit.de>
b696c22e - 2022-10-23 - Markus Heiser <markus.heiser@darmarit.de>
6ee1efe2 - 2022-10-23 - Jeewaka Fernando <Jeewakaphotography@gmail.com>
2022-10-28 07:18:50 +00:00
dependabot[bot]
3cade9a7eb
Bump svgo from 2.8.0 to 3.0.0 in /searx/static/themes/simple
Bumps [svgo](https://github.com/svg/svgo) from 2.8.0 to 3.0.0.
- [Release notes](https://github.com/svg/svgo/releases)
- [Changelog](https://github.com/svg/svgo/blob/main/CHANGELOG-old.md)
- [Commits](https://github.com/svg/svgo/compare/v2.8.0...v3.0.0)

---
updated-dependencies:
- dependency-name: svgo
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-28 07:13:58 +00:00
searxng-bot
18ba8628dd [translations] update from Weblate
c7fddee3 - 2022-10-15 - Linerly <linerly@protonmail.com>
f559a626 - 2022-10-17 - Markus Heiser <markus.heiser@darmarit.de>
fe7af662 - 2022-10-17 - Mateusz Bączek <mateusz.baczek1998@gmail.com>
8a7c3da9 - 2022-10-16 - Peter Martin <weblate@pe7er.com>
a84dad5c - 2022-10-16 - Franco Longo <longofrancoale@gmail.com>
9ee1ac8b - 2022-10-20 - prljav <marin.ruskica@gmail.com>
b91bedc4 - 2022-10-16 - Peter Martin <weblate@pe7er.com>
dff99ef4 - 2022-10-16 - Peter Martin <weblate@pe7er.com>
cd639f6c - 2022-10-17 - Markus Heiser <markus.heiser@darmarit.de>
49507a60 - 2022-10-14 - Markus Heiser <markus.heiser@darmarit.de>
ad305582 - 2022-10-16 - Peter Martin <weblate@pe7er.com>
19e97075 - 2022-10-17 - Markus Heiser <markus.heiser@darmarit.de>
97581f70 - 2022-10-14 - Markus Heiser <markus.heiser@darmarit.de>
fcd52cea - 2022-10-14 - Alexandre Flament <alex@al-f.net>
2022-10-21 07:32:09 +00:00
Vasilis Gerakaris
947b62c9d5
Fix floating point format in DDG weather humidity
Fixes #1836
2022-10-20 11:44:17 +03:00
Alexandre FLAMENT
035bc507ec [fix] startpage engine 2022-10-14 18:27:53 +00:00
Alexandre Flament
32e8c2cf09 searx.network: add "verify" option to the networks
Each network can define a verify option:
* false to disable certificate verification
* a path to existing certificate.

SearXNG uses SSL_CERT_FILE and SSL_CERT_DIR when they are defined
see https://www.python-httpx.org/environment_variables/#ssl_cert_file
2022-10-14 13:59:22 +00:00
searxng-bot
6e86f33342 [translations] update from Weblate
eee3d5e2 - 2022-10-12 - Markus Heiser <markus.heiser@darmarit.de>
c4eb9818 - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
27423f5b - 2022-10-12 - Markus Heiser <markus.heiser@darmarit.de>
9e8b7f86 - 2022-10-11 - No4vick <MineBor1@yandex.ru>
1203aa6a - 2022-10-11 - KEINOS <github@keinos.com>
22c78af5 - 2022-10-12 - Markus Heiser <markus.heiser@darmarit.de>
6a4776f8 - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
c00bdc7d - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
e5a39537 - 2022-10-09 - Kayra Uylar <k.uylar@outlook.com>
e3fad460 - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
da5f0bc3 - 2022-10-11 - Surepusofu Arutemu <crexlight@gmail.com>
5704a98b - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
f3ef3ebb - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
620636c1 - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
767b3bb2 - 2022-10-08 - KEINOS <github@keinos.com>
60d38c87 - 2022-10-11 - Markus Heiser <markus.heiser@darmarit.de>
2022-10-14 07:38:20 +00:00
Markus Heiser
23d797ee6f Update searx.data - update_osm_keys_tags.py
Patch was generated by::

  ./manage pyenv.cmd searxng_extra/update/update_osm_keys_tags.py

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-10-11 11:49:06 +02:00
searxng-bot
325eadfd04 [translations] update from Weblate
70909b19 - 2022-10-04 - Yan Lyra <yanlyra3@gmail.com>
acf1f0aa - 2022-10-03 - George Kashkosh <kash.george@gmail.com>
94ce447f - 2022-10-01 - Zaid Aiman <zaidaiman@gmail.com>
59959050 - 2022-09-30 - tjvfxtiwdr <tjvfxtiwdr@daimashili.com>
e27a5c79 - 2022-09-30 - a <a@daimashili.com>
2c05470f - 2022-09-30 - tjvfxtiwdr <tjvfxtiwdr@daimashili.com>
53644516 - 2022-10-01 - random <thrizem+wnd43@gmail.com>
2022-10-07 07:30:33 +00:00
Mohamed Elashri
8d5653e60d
Merge branch 'searxng:master' into master 2022-09-30 23:06:54 +00:00
searxng-bot
4fea4acea1 [translations] update from Weblate
fbac3535 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
cf5d71b7 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
6dc351bd - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
42daf1f8 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
f5fb629f - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
4e5f2c79 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
5131835f - 2022-09-28 - Robert Bridda <briddarobert@icloud.com>
02055902 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
716bd1d7 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
768c8e43 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
e8ad24c1 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
a88c5f91 - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
fc70c33a - 2022-09-28 - Markus Heiser <markus.heiser@darmarit.de>
2022-09-30 07:43:45 +00:00
Alexandre Flament
a7d693231c
Merge pull request #1819 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2022-09-29 16:03:34 +02:00
Alexandre Flament
f3d25f9cef
Merge pull request #1821 from searxng/update_data_update_engine_descriptions.py
Update searx.data - update_engine_descriptions.py
2022-09-29 16:02:57 +02:00
Alexandre Flament
5060732486
Merge pull request #1818 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-09-29 16:02:02 +02:00
Alexandre Flament
520a873ab4
Merge pull request #1820 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2022-09-29 16:01:31 +02:00
dalf
9cb792c0d6 Update searx.data - update_engine_descriptions.py 2022-09-29 02:22:00 +00:00
dalf
2d429ebd75 Update searx.data - update_wikidata_units.py 2022-09-29 02:13:02 +00:00
dalf
8fc3940448 Update searx.data - update_currencies.py 2022-09-29 02:12:54 +00:00
dalf
b7f4a3a207 Update searx.data - update_ahmia_blacklist.py 2022-09-29 02:12:48 +00:00
dalf
3153f0a795 Update searx.data - update_firefox_version.py 2022-09-29 02:12:48 +00:00
Alexandre Flament
a3148e5115
Merge pull request #1814 from return42/fix-typos
[fix] typos / reported by @kianmeng in searx PR-3366
2022-09-28 09:22:02 +02:00
Alexandre Flament
0e00af9c26
Merge pull request #1810 from return42/fix-1809
[fix] springer: unsupported operand type(s) for +: 'NoneType' and 'str'
2022-09-28 09:20:03 +02:00
Markus Heiser
ba8959ad7c [fix] typos / reported by @kianmeng in searx PR-3366
[PR-3366] https://github.com/searx/searx/pull/3366

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-27 18:32:14 +02:00
Mohamed Elashri
212c98c9f5
Merge branch 'searxng:master' into master 2022-09-27 14:03:12 +00:00
Markus Heiser
52023e3d6e [fix] doc of the paper.html template (isbn, issn)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-25 15:46:29 +02:00
Markus Heiser
0052887929 [fix] springer: unsupported operand type(s) for +: 'NoneType' and 'str'
- fix issue reported #1809
- filter out `None` value from issn and isbn list
- add comments (from publicationName)
- add publisher

Closes: https://github.com/searxng/searxng/issues/1809
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-25 15:25:55 +02:00
Mohamed Elashri
5832c70680
correct sci-hub links/ add .ru and remove other 3rd party domains. 2022-09-24 11:03:57 -04:00
Markus Heiser
e36b023508 [mod] core.ac.uk: add cetgory 'scientific publications'
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 16:16:22 +02:00
Markus Heiser
b424ee255e [mod] paper.html: simplify template by using result_link macro
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 16:13:36 +02:00
Alexandre Flament
bfd6f61849
Merge pull request #1804 from return42/fix-core.ac.uk
core.ac.uk: use paper.html template
2022-09-24 15:12:05 +02:00
Alexandre Flament
16443d4f4a [mod] core.ac.uk: try multiple ways to get url
If the url is not found, using:
* the DOI
* the downloadUrl
* the ARK id
2022-09-24 15:02:39 +02:00
Markus Heiser
3198c906af [mod] paper.html: add links to doi resolver
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 14:19:51 +02:00
Markus Heiser
c76830d8a8 [mod] core.ac.uk: use paper.html template
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 13:19:33 +02:00
Markus Heiser
3ff2ad939d [fix] ERROR searx.engines.core.ac.uk: list index out of range
Some result items from core.ac.uk do not have an URL::

  Traceback (most recent call last):
  File "searx/search/processors/online.py", line 154, in search
    search_results = self._search_basic(query, params)
  File "searx/search/processors/online.py", line 142, in _search_basic
    return self.engine.response(response)
  File "SearXNG/searx/engines/core.py", line 73, in response
    'url': source['urls'][0].replace('http://', 'https://', 1),

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 13:19:33 +02:00
Markus Heiser
caebafdd06 [fix] typo in crossref settings: disable --> disabled
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-24 08:12:36 +02:00
Alexandre Flament
d6446be38f [mod] science category: various update of about PR 1705 2022-09-23 20:52:55 +02:00
Alexandre FLAMENT
fe43b6e821 [build] /static 2022-09-23 20:45:58 +02:00
Alexandre FLAMENT
e36f85b836 Science category: update the engines
* use the paper.html template
* fetch more data from the engines
* add crossref.py
2022-09-23 20:45:58 +02:00
Alexandre FLAMENT
593026ad9c oa_doi_rewrite: add the doi to the result when it is found.
Currentty, when oa_doi_rewrite find a DOI in the result URL, it replace the URL.
In this commit, the plugin adds the key "doi" to the result,
so the paper.html can show it.
2022-09-23 20:45:58 +02:00
Alexandre FLAMENT
5ba831d6a8 Add paper.html result template 2022-09-23 20:45:58 +02:00
Alexandre FLAMENT
a96f503d7b Add searx.webutils.searxng_format_date
* Move the datetime to str code from searx.webapp.search to searx.webutils.searxng_format_date
* When the month, day, hour, day and second are zero, the function returns only the year.
2022-09-23 20:45:58 +02:00
Alexandre Flament
bef3984d03
Merge pull request #1728 from liimee/eng-ddw
add duckduckgo weather engine
2022-09-23 18:14:09 +02:00
Alexandre Flament
d3fec1388c
Merge pull request #1624 from liimee/eng-wttr
Add wttr.in engine
2022-09-23 18:13:37 +02:00
searxng-bot
ab6e1542ff [translations] update from Weblate
55133802 - 2022-09-21 - Linerly <linerly@protonmail.com>
b9309bdf - 2022-09-22 - Xosé M <correo@xmgz.eu>
6da8db13 - 2022-09-21 - Constantine Giannopoulos <K.Giannopoulos@acg.edu>
c1edbd89 - 2022-09-21 - Markus Heiser <markus.heiser@darmarit.de>
9795e5fe - 2022-09-22 - alexfs2015 <alex04fs@gmail.com>
2022-09-23 07:38:23 +00:00
Alexandre Flament
1a7b6872b5
Merge pull request #1792 from unixfox/google-images-internal-api
use the internal API for google images
2022-09-21 19:50:38 +02:00
Markus Heiser
cf7ee67f71 [mod] google-images: slightly improvements of the engine
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-21 18:59:55 +02:00
Markus Heiser
8b40e68c56 [fix] wording: SearXNG is 'open' and not 'hackable'
The word "hackable" may arouse interest in programmers to participate in the
development, but it scares the ordinary user.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-21 17:10:35 +02:00
Emilien Devos
df5f8d0e8e use the internal API for google images 2022-09-20 22:52:38 +02:00
Markus Heiser
dcf1d408a5 [fix] google-news: origin result does not have a content area
The google news are in a rework, the content area of a news item has been
removed.

Closes: https://github.com/searxng/searxng/issues/1790
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-20 20:18:43 +02:00
Alexandre FLAMENT
33b43763b9 Brave engine: fix BrotliDecoderDecompressStream error 2022-09-18 22:08:38 +00:00
Markus Heiser
fbf07237ff [fix] and improve docs generated from source code.
Fix::

    searx/locales.py:docstring of searx.locales.get_engine_locale:17: \
      WARNING: Definition list ends without a blank line; unexpected unindent.

Improvement: don't show default values in the generated documentation whe it is
more a mess than a usefull information (`:meta hide-value:`).

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-18 12:44:12 +02:00
Alexandre Flament
b3708e4137
Merge pull request #1757 from LencoDigitexer/master
add yandex autocomplete
2022-09-17 13:17:00 +02:00
LencoDigitexer
bc28091557 remove the print statement 2022-09-17 11:25:14 +03:00
searxng-bot
2ee8e5eff2 [translations] update from Weblate
570c4f7d - 2022-09-15 - Fero Novák <itzwowsmile@gmail.com>
0ef09ea1 - 2022-09-15 - dogyx <aaronloit@tuta.io>
03f97e22 - 2022-09-09 - beriain <soila@disroot.org>
caddaedc - 2022-09-10 - Markus Heiser <markus.heiser@darmarit.de>
addfb0c2 - 2022-09-09 - NxOne14 <kiril2315@gmail.com>
2872e3a6 - 2022-09-11 - Markus Heiser <markus.heiser@darmarit.de>
d2835b09 - 2022-09-11 - Sadith Nadungoda <sadithnadungoda@gmail.com>
2022-09-16 07:30:31 +00:00
LencoDigitexer
3f72a79088 add yandex to autocomplete backends settings 2022-09-09 23:50:58 +03:00
LencoDigitexer
7b8d6015e3 add yandex autocompleter 2022-09-09 23:42:44 +03:00
Alexandre Flament
eb3d185e66
Merge pull request #1755 from searxng/dependabot/npm_and_yarn/searx/static/themes/simple/master/sharp-0.31.0
Bump sharp from 0.30.7 to 0.31.0 in /searx/static/themes/simple
2022-09-09 10:40:38 +02:00
searxng-bot
bf8ea2020f [translations] update from Weblate 2022-09-09 07:26:09 +00:00
dependabot[bot]
cbf65e8292
Bump sharp from 0.30.7 to 0.31.0 in /searx/static/themes/simple
Bumps [sharp](https://github.com/lovell/sharp) from 0.30.7 to 0.31.0.
- [Release notes](https://github.com/lovell/sharp/releases)
- [Changelog](https://github.com/lovell/sharp/blob/main/docs/changelog.md)
- [Commits](https://github.com/lovell/sharp/compare/v0.30.7...v0.31.0)

---
updated-dependencies:
- dependency-name: sharp
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-09 07:11:11 +00:00
Alexandre Flament
691c0ed6b9
Merge pull request #1743 from dalf/update_about_metrics
Update about the metrics
2022-09-04 11:29:28 +02:00
Markus Heiser
ad8ffd222c [mod] option 'ui: cache_url:' to configure internet cache or archive
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-04 09:42:20 +02:00
Alexandre FLAMENT
dd0887be18 xpath engine: change raise_for_httperror to no_result_for_http_status
no_result_for_http_status contains a list of HTTP status.
These HTTP status are seen an empty result list.
In other cases an exception is thrown as usual.

Previously raise_for_httperror were ignoring all HTTP error,
which make defective engines invisible in the stats.
2022-09-04 09:07:28 +02:00
Markus Heiser
a15dfa5ee1 [fix] engine woxikon.de - don't raise exception on empty result list
Woxikon expects a word in German, so with query "foo" the site finds nothing and
respons a 404:

    httpx.HTTPStatusError: Client error '404 Not Found' \
      for url 'https://synonyme.woxikon.de/synonyme/foo.php'

[1] https://github.com/searxng/searxng/issues/1543#issuecomment-1193317054

Closes: https://github.com/searxng/searxng/issues/1543
Suggested-by: @allendema [1]
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-04 09:07:28 +02:00
Markus Heiser
8e9fb0b435
Merge pull request #1647 from return42/deepl-engine
[mod] add deepl translation engine
2022-09-02 14:09:22 +02:00
Alexandre FLAMENT
66f72a006f template: when enable_metrics are disabled, hide the empty stats
when metrics are disabled:
* hide the link to /stats at the bottom of the pages
* in /preferences, hide the columns "Response time" and "Reliability"
2022-09-02 08:52:23 +00:00
Alexandre FLAMENT
94a28ebe53 Stats: display only the score per result, no anymore the score 2022-09-02 08:30:38 +00:00
searxng-bot
9e84cf31a4 [translations] update from Weblate
9b3635db - 2022-08-31 - Andrij Mizyk <andmizyk@gmail.com>
875cbf38 - 2022-09-01 - Markus Heiser <markus.heiser@darmarit.de>
7b3b12a0 - 2022-08-31 - SecularSteve <fairfull.playing@gmail.com>
e60b4544 - 2022-08-28 - Markus Heiser <markus.heiser@darmarit.de>
dc9c17a4 - 2022-08-31 - SecularSteve <fairfull.playing@gmail.com>
7307cf31 - 2022-08-31 - SecularSteve <fairfull.playing@gmail.com>
ae642e6f - 2022-09-01 - Xosé M <correo@xmgz.eu>
8db6b9c9 - 2022-08-28 - Markus Heiser <markus.heiser@darmarit.de>
d74ef692 - 2022-08-31 - SecularSteve <fairfull.playing@gmail.com>
3ddf8997 - 2022-08-30 - Markus Heiser <markus.heiser@darmarit.de>
303d0890 - 2022-08-28 - Markus Heiser <markus.heiser@darmarit.de>
2022-09-02 07:25:26 +00:00
Émilien Devos
fcccf39030
Disable brave by default
Brave is too unstable and will often not work by default. As seen in many issues: https://github.com/searxng/searxng/issues?q=is%3Aissue++sort%3Aupdated-desc+brave+label%3Abug+
2022-08-31 15:47:56 +02:00
ta
85b5293e40 simplify infobox result 2022-08-31 18:29:50 +07:00
ta
12f7d4a46b add duckduckgo weather engine 2022-08-31 17:29:32 +07:00
Alexandre Flament
242db53118
Merge pull request #1708 from dalf/result_proxy_default_settings
settings.yml: set default values for result_proxy
2022-08-29 19:42:04 +02:00
Alexandre Flament
a7bd2b47c2
Merge pull request #1712 from dalf/remove_searx_env_var
Remove usage of SEARX environment variables
2022-08-29 19:41:39 +02:00
Markus Heiser
13ef9cc125
Merge pull request #1720 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-08-29 07:09:04 +02:00
Markus Heiser
e9b564d066
Merge pull request #1722 from searxng/update_data_update_languages.py
Update searx.data - update_languages.py
2022-08-29 07:08:26 +02:00
Markus Heiser
2b65502388
Merge pull request #1723 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2022-08-29 07:07:54 +02:00
Markus Heiser
55d04a089d
Merge pull request #1724 from searxng/update_data_update_engine_descriptions.py
Update searx.data - update_engine_descriptions.py
2022-08-29 07:07:14 +02:00
Markus Heiser
4a96480bd5
Merge pull request #1721 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2022-08-29 07:06:39 +02:00
dalf
c2400a8677 Update searx.data - update_engine_descriptions.py 2022-08-29 02:17:55 +00:00
dalf
e8bf907eef Update searx.data - update_firefox_version.py 2022-08-29 02:09:34 +00:00
dalf
915c0a2bc6 Update searx.data - update_languages.py 2022-08-29 02:09:27 +00:00
dalf
b1ccecbeb3 Update searx.data - update_wikidata_units.py 2022-08-29 02:09:17 +00:00
dalf
2e6d41fa24 Update searx.data - update_ahmia_blacklist.py 2022-08-29 02:09:09 +00:00
dalf
83fbc16908 Update searx.data - update_currencies.py 2022-08-29 02:09:09 +00:00
Alexandre FLAMENT
4adc9920e9 Remove usage of SEARX environment variables 2022-08-28 17:12:57 +00:00
Alexandre FLAMENT
341ad46303 settings.yml: set default values for result_proxy
* initialize result_proxy with searx/settings_defaults.py
* allow result_proxy.key to be a string

this commit supersedes #1522
2022-08-28 09:27:53 +00:00
Markus Heiser
8bdc6986a1
Merge pull request #1706 from dalf/fix-autocomplete-post
Fix: autocomplete with the POST method: url encode the user query
2022-08-28 09:14:47 +02:00
Markus Heiser
3be847149e
Merge pull request #1707 from dalf/fix-external-bang
External bang: bug fix: URL encode the query so "!!g 1+1" works as intended
2022-08-28 09:07:24 +02:00
Alexandre FLAMENT
2af1a6f547 External bang: bug fix: URL encode the query so "!!g 1+1" works as intended 2022-08-27 07:10:26 +00:00
Alexandre FLAMENT
268fa7e036 [build] /static 2022-08-27 06:52:20 +00:00
Alexandre FLAMENT
4a72a6b9fc Theme: fix autocompletion with the POST method
With the POST method, autocomplete.js does not URL encode the values.
For example "1+1" is sent as "1+1" which is read as "1 1" since space are URL encoded with a plus.

There is no clean way to fix the bug since autocomplete.js seems abandoned.

The commit monkey patches the ajax function of autocomplete.js

Related to #1695
2022-08-27 06:48:30 +00:00
Alexandre Flament
56000d5162
Merge pull request #1699 from liimee/eng-app-store
add apple app store engine
2022-08-27 07:43:23 +02:00
Alexandre Flament
44bc94c36e
Merge pull request #1700 from liimee/eng-ddm
add apple maps engine
2022-08-27 07:36:16 +02:00
ta
5057007270 remove thumbnail from results 2022-08-27 06:23:30 +07:00
ta
525946d7dd add poi's website and phone number, doesn't crash when there is no displayMapRegion, query the token on the first request 2022-08-27 06:17:58 +07:00
Alexandre Flament
5284de9137
Merge pull request #1702 from tiekoetter/limiter-accept-encoding-handling
[mod] limiter plugin: Accept-Encoding handling
2022-08-26 11:54:12 +02:00
searxng-bot
e5a25e51bf [translations] update from Weblate
3e034294 - 2022-08-26 - Markus Heiser <markus.heiser@darmarit.de>
46a4dfd3 - 2022-08-24 - Markus Heiser <markus.heiser@darmarit.de>
d41463fd - 2022-08-24 - Markus Heiser <markus.heiser@darmarit.de>
338b6716 - 2022-08-22 - Markus Heiser <markus.heiser@darmarit.de>
0c9d7756 - 2022-08-22 - Markus Heiser <markus.heiser@darmarit.de>
b422a480 - 2022-08-19 - Markus Heiser <markus.heiser@darmarit.de>
44c9caa0 - 2022-08-22 - Ricardo Simões <xmcorporation@gmail.com>
a774721f - 2022-08-20 - Markus Heiser <markus.heiser@darmarit.de>
d8a322d6 - 2022-08-22 - Markus Heiser <markus.heiser@darmarit.de>
2022-08-26 07:24:01 +00:00
Léon Tiekötter
221740f76e
[mod] limiter plugin: Accept-Encoding handling
Only raise "suspicious Accept-Encoding" when both "gzip" and "deflate" are missing from Accept-Encoding.
Prevent Browsers which only implement one compression solution from being blocked by the limiter plugin.
Example Browser which is currently blocked: Lynx Browser (https://lynx.invisible-island.net)
2022-08-25 23:21:30 +02:00
ta
5dce299b22 add apple maps engine 2022-08-25 17:05:40 +07:00
Alexandre Flament
5a241e545e
Merge pull request #1688 from liimee/eng-9gag
Add 9gag engine
2022-08-25 09:32:52 +02:00
ta
cef7bbab22 get the not cropped version of the thumbnail when the image height is not too important 2022-08-24 18:33:11 +07:00
ta
78bff4618c add safesearch support 2022-08-24 18:31:04 +07:00
ta
bcae7ae4e3 add developer info as author 2022-08-24 17:50:38 +07:00
ta
e5c1b64b1d add the apple app store engine
The Apple App Store is the digital app distribution platform for iOS & iPadOS.
2022-08-24 17:27:36 +07:00
ta
040e24f9ad support playing videos directly 2022-08-24 16:48:31 +07:00
Markus Heiser
c2db7b2a66 [fix] Internal server error after changing UI language to BG
A placeholder has been translated to BG, issue was added 8 month ago, when BG
translation was added [1]

    msgid "Compute {functions} of the arguments"
    msgstr "Изчислете {функции} на аргументите"

The incorrect translation has been corrected here in the message files and on
weblate.

[1] https://weblate.bubu1.eu/translate/searxng/searxng/bg/?&offset=49#history
Closes: https://github.com/searxng/searxng/issues/1692
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-23 08:11:16 +02:00
ta
79d06509c1 add tags as suggestions 2022-08-23 05:18:35 +07:00
ta
d22f469010 use invalid-name instead of C0103 for pylint 2022-08-22 18:27:35 +07:00
ta
dd9127492f add 9gag engine
9GAG is a social media website where users upload and share user-generated images and videos
2022-08-22 17:35:07 +07:00
ta
e64cca8c3f don't raise error when nothing was found 2022-08-22 17:04:29 +07:00
M Asenov
faa32d5773 fixed xpath selector for appropriate results 2022-08-21 20:08:00 +01:00
Alexandre Flament
5ed40af3ba
Merge pull request #1661 from liimee/eng-tw
Add twitter engine
2022-08-21 15:21:18 +02:00
Markus Heiser
ee3c5e7752
Merge pull request #1666 from return42/harden-get_engine_locales
[fix] typo in get_engine_locale
2022-08-21 08:22:29 +02:00
Markus Heiser
77a0f33819 [fix] engine duden - don't raise exception on empty result list
Duden expects a word in German, so with query "amazing" the site finds nothing
and respons a 404:

    httpx.HTTPStatusError: Client error '404 Not Found' for url\
      'https://www.duden.de/suchen/dudenonline/amazing'

[1] https://github.com/searxng/searxng/issues/1543#issuecomment-1193317054

Suggested-by: @allendema [1]
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-20 08:41:03 +02:00
Markus Heiser
6f28a69f12
Merge pull request #1677 from searxng/dependabot/pip/master/pygments-2.13.0
Bump pygments from 2.12.0 to 2.13.0
2022-08-19 10:21:22 +02:00
Markus Heiser
299635fb8b [build] /static 2022-08-19 10:01:25 +02:00
Markus Heiser
b08a779f2e make pygments.less
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-19 10:00:50 +02:00
searxng-bot
3478c0bc8b [translations] update from Weblate
2b94abf3 - 2022-08-13 - Markus Heiser <markus.heiser@darmarit.de>
249c92f8 - 2022-08-13 - gkkulik <gregorykkulik@gmail.com>
a331870c - 2022-08-12 - Markus Heiser <markus.heiser@darmarit.de>
5aca8ddc - 2022-08-17 - Markus Heiser <markus.heiser@darmarit.de>
6e7d76a0 - 2022-08-18 - Markus Heiser <markus.heiser@darmarit.de>
2a49e5f0 - 2022-08-15 - Markus Heiser <markus.heiser@darmarit.de>
2d2cafa6 - 2022-08-18 - Content Card <weblate-bubu1@gabg.email>
adcf97ed - 2022-08-15 - Markus Heiser <markus.heiser@darmarit.de>
2022-08-19 07:18:58 +00:00
ta
05851978cf add explanation of token 2022-08-17 19:45:42 +07:00
ta
c8acd4a3b6 add profile image to user results 2022-08-17 14:30:59 +07:00
ta
b6fd7cd571 add thumbnail to results if available 2022-08-17 14:25:22 +07:00
Markus Heiser
de1e7d12f7 [fix] get_engine_locale: better approximation of 'en' is 'en-US'
Compared to `en-EN` the better approximation of 'en' is 'en-US'.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 15:45:07 +02:00
Markus Heiser
ac7776663b [fix] typo in get_engine_locale
Due to a typo in get_engine_locale, a language selection like `!qw :de siemens`
did not work.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 14:35:09 +02:00
Markus Heiser
ef81d14ccf [fix] harden get_engine_locale: handle UnknownLocaleError exceptions
When a user selects an unknown or invalid locale by using the search syntax:

    !qw siemens :de-TW

Before this patch a UnknownLocaleError exception will be rasied:

```
Traceback (most recent call last):
  File "SearXNG/searx/search/processors/online.py", line 154, in search
    search_results = self._search_basic(query, params)
  File "SearXNG/searx/search/processors/online.py", line 128, in _search_basic
    self.engine.request(query, params)
  File "SearXNG/searx/engines/qwant.py", line 98, in request
    q_locale = get_engine_locale(params['language'], supported_languages, default='en_US')
  File "SearXNG/searx/locales.py", line 216, in get_engine_locale
    locale = babel.Locale.parse(searxng_locale, sep='-')
  File "SearXNG/local/py3/lib/python3.8/site-packages/babel/core.py", line 330, in parse
    raise UnknownLocaleError(input_id)
```

This patch implements a simple exception handling, since e.g. `de-TW` does not
exists `de` will be used to get engines locale.  On invalid terms like `xy-XY`
the default will be returned.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 13:55:42 +02:00
Markus Heiser
27385e7898 [mod] qwant - add safesearch option
Closes: https://github.com/searxng/searxng/issues/1640
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 10:36:14 +02:00
Markus Heiser
6579d6d558 [fix] qwant - API error::locale must be one ..
The request function should not request a language (aka locale) that is not
supported by qwant. Select a locale like zh-TW ends in qwant's API error:

  ERROR searx.engines.qwant news: exception : \
  API error::locale must be one of the following values: \
    en_gb, en_ie, en_us, en_ca, en_my, en_au, en_nz, de_de, de_ch, de_at, fr_fr, \
    fr_be, fr_ch, fr_ca, fr_ad, fc_ca, co_fr, es_es, es_ar, es_cl, es_co, es_mx, \
    es_pe, es_ad, ca_es, ca_ad, ca_fr, eu_es, eu_fr, it_it, it_ch, pt_pt, pt_ad, \
    nl_be, nl_nl

The existing searx.utils.match_language function is unsuitable for this purpose,
it is replaced by function searx.locales.get_engine_locale that is based on the
methods from the babel package.

The quant's _fetch_supported_languages function has been revised to filter out
languages 8aka locales) not supported by qwant.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 10:36:14 +02:00
Markus Heiser
9ae409a05a [mod] add locale.get_engine_locale to get predictable results
The match_language function sometimes returns incorrect results which is why a
new function get_engine_locale is required.

A bugfix of the match_language is not easily possible, because there is almost
no documentation for it and already the call parameters are undefined.  E.g. the
function processes values like the ones from yahoo::

    "yahoo": [
        "ar",
        ...
        "zh_chs",
        "zh_cht"
     ]

The get_engine_locale has been documented in detail, there is a clear
description of the assumptions as well as the requirements and approximation
rules (read doc-string for more details)::

    Argument ``engine_locales`` is a python dict that maps *SearXNG locales* to
    corresponding *engine locales*:

      <engine>: {
          # SearXNG string : engine-string
          'ca-ES'          : 'ca_ES',
          'fr-BE'          : 'fr_BE',
          'fr-CA'          : 'fr_CA',
          'fr-CH'          : 'fr_CH',
          'fr'             : 'fr_FR',
          ...
          'pl-PL'          : 'pl_PL',
          'pt-PT'          : 'pt_PT'
      }

    .. hint::

       The *SearXNG locale* string has to be known by babel!

In the following you will find a comparison:

>>> import babel.languages
>>> from searx.utils import match_language
>>> from searx.locales import get_engine_locale

Assume we have an engine that supports the follwoing locales:

>>> lang_list = {
...     "zh-CN": "zh_CN",
...     "zh-HK": "zh_HK",
...     "nl-BE": "nl_BE",
...     "fr-CA": "fr_CA",
... }

Assumption:

  A. When a user selects a language the results should be optimized according to
     the selected language.

  B. When user selects a language and a territory the results should be
     optimized with first priority on territory and second on language.

----

Example: (Assumption A.)

  A user selects region 'zh-TW' which should end in zh_HK

hint:
  CN is 'Hans' and HK ('Hant') fits better to TW ('Hant')

>>> get_engine_locale('zh-TW', lang_list)
'zh_HK'
>>> lang_list[match_language('zh-TW', lang_list)]
'zh_CN'

----

Example: (Assumption A.)

  A user selects only the language 'zh' which should end in CN

>>> get_engine_locale('zh', lang_list)
'zh_CN'
>>> lang_list[match_language('zh', lang_list)]
'zh_CN'

----

Example: (Assumption B.)

  A user selects region 'fr-BE' which should end in nl-BE

hint:
  priority should be on the territory the user selected.  If the user
  prefers 'fr' he will select 'fr' without a region tag.

>>> get_engine_locale('fr-BE', lang_list, default='unknown')
'nl_BE'
>>> match_language('fr-BE', lang_list, fallback='unknown')
'fr-CA'

----

Example: (Assumption A.)

  A user selects only the language 'fr' which should end in fr_CA

>>> get_engine_locale('fr', lang_list)
'fr_CA'
>>> lang_list[match_language('fr', lang_list)]
'fr_CA'

----

The difference in priority on the territory is best shown with a engine that
supports the following locales:

>>> lang_list = {
...     "fr-FR": "fr_FR",
...     "fr-CA": "fr_CA",
...     "en-GB": "en_GB",
...     "nl-BE": "nl_BE",
... }

----

Example: (Assumption A.)

   A user selects only a language

>>> get_engine_locale('en', lang_list)
'en_GB'
>>> match_language('en', lang_list)
'en-GB'

hint: the engine supports fr_FR and fr_CA since no territory is given, fr_FR
takes priority ..

>>> get_engine_locale('fr', lang_list)
'fr_FR'
>>> lang_list[match_language('fr', lang_list)]
'fr_FR'

----

Example: (Assumption B.)

  A user selects region 'fr-BE' which should end in nl-BE

>>> get_engine_locale('fr-BE', lang_list)
'nl_BE'
>>> lang_list[match_language('fr-BE', lang_list)]
'fr_FR'

----

If the user selects a language and there are two locales like the following:

>>> lang_list = {
...      "fr-BE": "fr_BE",
...      "fr-CH": "fr_CH",
...  }
>>>

>>> get_engine_locale('fr', lang_list)
'fr_BE'
>>> lang_list[match_language('fr', lang_list)]
'fr_BE'

Looks like both functions return the same value, but match_language depends on the
order of the dictionary (which is not predictable):

>>> lang_list = {
...      "fr-CH": "fr_CH",
...      "fr-BE": "fr_BE",
...  }
>>> get_engine_locale('fr', lang_list)
'fr_BE'
>>> lang_list[match_language('fr', lang_list)]
'fr_CH'
>>>

The get_engine_locale selects the locale by looking at the "population percent"
and this percentage has an higher amount in BE (68.%) compared to CH (21%)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 10:35:55 +02:00
Markus Heiser
75bb8c45d0 [mod] decouple qwant's categories from SearXNG's categories
By using new property `qwant_categ:` the category of qwant is no longer bound to
the category of SearXNG.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-14 10:26:54 +02:00
ta
96ea355a1f add twitter engine 2022-08-14 08:39:41 +07:00
Markus Heiser
0043190643
Merge pull request #1655 from return42/fix-opensearch
[fix] improve OpenSearch description
2022-08-13 12:36:34 +02:00
Léon Tiekötter
b56848e8d0
Merge pull request #1660 from liimee/eng-neeva
Add neeva engine
2022-08-13 02:53:27 +02:00
Léon Tiekötter
8fa84ee9f4 Fix time range support and add soft_max_redirects
Add custom time_range_url and time_range_map

Set soft_max_redirects = 2 to prevent "ErrorContext('searx/search/processors/online.py', 116, 'count_error(', None, '2 redirects, maximum: 0', ('200', 'OK', 'neeva.com')) True"
2022-08-13 07:35:15 +07:00
ta
d6dfada1a9 add neeva web engine
Neeva is "the world's first ad-free, private search engine" and uses data from Apple, Bing, Yelp and "others".
They claim to crawl "hundreds of millions" of URLs a day (https://twitter.com/Neeva/status/1536447373903335426).
2022-08-13 07:26:36 +07:00
searxng-bot
b4fea007f5 [translations] update from Weblate
f2997bfa - 2022-08-12 - Markus Heiser <markus.heiser@darmarit.de>
eeca674f - 2022-08-10 - Edrean Ernst <edrean@allesbeste.com>
7478de6a - 2022-08-11 - Markus Heiser <markus.heiser@darmarit.de>
c4fb9110 - 2022-08-07 - wordpure <wordlesspure@gmail.com>
a5b432e2 - 2022-08-11 - Markus Heiser <markus.heiser@darmarit.de>
eb01d415 - 2022-08-09 - Markus Heiser <markus.heiser@darmarit.de>
f96eb06e - 2022-08-11 - Shopimisrel <shopisrael12@gmail.com>
e7c79191 - 2022-08-08 - ajnasaboobacker <ajnasaboobacker@gmail.com>
f4dbd424 - 2022-08-08 - ajnasaboobacker <ajnasaboobacker@gmail.com>
2022-08-12 07:18:14 +00:00
Markus Heiser
3b0f9c07b2 [fix] improve OpenSearch description
Some HTTP-Clients do have issues with the ``opensearch.xml`` from SearXNG
(related [1][2]) while other OpenSearch descriptions[3] (e.g. from qwant) work
flawles.

Inspired by the OpenSearch description from qwant and with informations from the
specification[4] the ``opensearch.xml`` has been *improved*.

- convert `<Url>` methods from lower case to upper case (`POST`|`GET`)
- add `<moz:SearchForm>` and `xmlns:moz="http://www.mozilla.org/2006/browser/search/"`
- add `<Query role="example" searchTerms="SearXNG" />`  [4]

  OpenSearch description documents should include at least one Query element of
  `role="example"` that is expected to return search results. Search clients may
  use this example query to validate that the search engine is working properly.

- modified `<LongName>` to SearXNG
- modified `<Description>` the word 'hackable' scares uninitiated users and was removed
- add the `type="image/png"` to `<Image>`

Test can be done by::

    make run

Visit http://127.0.0.1:8888/ and add the search engine to your WEB-Browser /
test with different WEB-Browser from desktop and Smartphones (are there any iOS
user here, please test on Safari and Chrome).

[1] https://app.element.io/#/room/#searxng:matrix.org/$xN_abdKhNqUlgXRBrb_9F3pqOxnSzGQ1TG0s0G9hQVw
[2] https://github.com/searxng/searxng/issues/431
[3] https://developer.mozilla.org/en-US/docs/Web/OpenSearch
[4] https://github.com/dewitt/opensearch/blob/master/opensearch-1-1-draft-6.md#the-query-element

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-11 19:04:36 +02:00
Markus Heiser
73ffa0c070 Update searx.data - update_engine_descriptions.py
./manage pyenv.cmd python ./searxng_extra/update/update_engine_descriptions.py

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-10 21:48:34 +02:00
Johan Planchon
e0215e0cc8 add sourcehut engine 2022-08-10 21:48:12 +02:00
Markus Heiser
43c545910b
Merge pull request #1648 from unixfox/google_mobile_ui_parameter
output format protobuf to HTML for google mobile
2022-08-10 20:50:45 +02:00
Markus Heiser
eb02cc77c5 [fix] google - simplify XPath selectors to fetch more results
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-08-10 18:55:31 +02:00
Johan Planchon
90bdb23756 add lib.rs engine 2022-08-10 12:17:55 +02:00
Émilien Devos
b9f16a77db output format protobuf to HTML for google mobile 2022-08-10 09:36:06 +00:00
Thomas Renard
d4acbcfe63 [mod] add deepl translation engine
This implements the Deepl Translation engine. It works nearly like lingva but
directly to the deepl API.  This api only needs a to-lang, from-lang is a fake
by now.

There is a free option to use [1].

[1] https://www.deepl.com/pro-api?cta=header-pro-api for registering a free account.
2022-08-10 09:14:36 +02:00
Brock Vojković
24210fb10b
Revert PR #1633
This reverts the changes made to the Google results XPath in PR #1633.
2022-08-10 03:41:39 +02:00
Léon Tiekötter
94b3656b4a [fix] google engine: results XPath
Seems google rolls out changes first on the `google.com` domain and later on the
"language" domains.  By example: yesterday [1] `google.com` did not work but
`google.de` and `google.fr` did work, today they do not work any longer and this
fix is needed on all domains.

Closes: https://github.com/searxng/searxng/issues/1628
[1] https://github.com/searxng/searxng/issues/1628#issuecomment-1208191816
2022-08-09 06:23:59 +02:00
Markus Heiser
925f3ff487
Merge pull request #1627 from allendema/add-marginalia
[enh] Initial Marginalia.nu support (foss)
2022-08-08 06:53:02 +02:00
Markus Heiser
58f630d312
Merge pull request #1623 from return42/mod-yep.com
[mod] engine yep.com: show all 100 results yep.com has
2022-08-08 06:52:15 +02:00