Commit graph

5239 commits

Author SHA1 Message Date
Bnyro
94aafc83a6 [build] /static 2024-11-29 15:05:00 +01:00
Bnyro
6a9b97cad2 [feat] search: shift/ctrl click a category to select multiple categories 2024-11-29 15:05:00 +01:00
return42
6ca89e1319 [data] update searx.data - update_engine_traits.py 2024-11-29 14:57:06 +01:00
Markus Heiser
605f38b352 [fix] update_currencies.py: github CI has longer timeouts
Github action Update data - update_currencies [1]:

    ./manage pyenv.cmd python ./searxng_extra/update/update_currencies.py

fails with ``httpcore.ReadTimeout`` / the default timeout is 3sec.

[1] https://github.com/searxng/searxng/actions/runs/12076864366/job/33703464399

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-29 14:50:17 +01:00
searxng-bot
2717ffd094 [l10n] update translations from Weblate
ba1cebf8b - 2024-11-25 - saledai <saledai@users.noreply.translate.codeberg.org>
25da337e5 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
8379976e0 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
fa080d132 - 2024-11-26 - ghose <ghose@users.noreply.translate.codeberg.org>
42ac0f2d2 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
bb9c1d4b3 - 2024-11-25 - Outbreak2096 <Outbreak2096@users.noreply.translate.codeberg.org>
768be588f - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
13a63779a - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
649d5494b - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
7ce063699 - 2024-11-25 - saledai <saledai@users.noreply.translate.codeberg.org>
6f4ed2d9d - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
02a34ef99 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
de3ab1d94 - 2024-11-25 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
d18f56fa1 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
dff38e041 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
2e5c6694e - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
c9e9e0864 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
c625e848c - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
84a87ab05 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
28ebc3a97 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
b340f5ea8 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
e5fdd25ad - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
cf6b35d0a - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
da0ec01bc - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
7ca3c3051 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
adffd7987 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
d5c101710 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
f862cf05a - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
e7f4c00a8 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
2a25e9a1b - 2024-11-25 - Linerly <Linerly@users.noreply.translate.codeberg.org>
8cd81e701 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
80726a79a - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
ab7a56a81 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
ed44ff721 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
3b2b40d69 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
51926fb18 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
e823c2915 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
57b884908 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
525fcc395 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
fe2bf7267 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
d21ac5278 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
d18e3376b - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
a638f5ad5 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
c94c9b313 - 2024-11-25 - AndersNordh <AndersNordh@users.noreply.translate.codeberg.org>
aaa801da2 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
3b4961df8 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
6698f2069 - 2024-11-24 - return42 <return42@users.noreply.translate.codeberg.org>
73a117384 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
054d5cba4 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
1d3f21946 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
92ded48b1 - 2024-11-25 - return42 <return42@users.noreply.translate.codeberg.org>
d84b77ff9 - 2024-11-24 - SomeTr <SomeTr@users.noreply.translate.codeberg.org>
2ece96ac9 - 2024-11-24 - Priit Jõerüüt <jrtcdbrg@users.noreply.translate.codeberg.org>
2024-11-29 14:23:56 +01:00
Markus Heiser
540323a4b0 [mod] hardening xpath engine: ignore empty results
A SearXNG maintainer on Matrix reported a traceback::

    File "searxng-src/searx/engines/xpath.py", line 272, in response
      dom = html.fromstring(resp.text)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "searx-pyenv/lib/python3.11/site-packages/lxml/html/__init__.py", line 850, in fromstring
      doc = document_fromstring(html, parser=parser, base_url=base_url, **kw)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "searx-pyenv/lib/python3.11/site-packages/lxml/html/__init__.py", line 738, in document_fromstring
      raise etree.ParserError(
    lxml.etree.ParserError: Document is empty

I don't have an example to reproduce the issue, but the issue and this patch are
clearly recognizable even without an example.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-29 14:20:31 +01:00
return42
32260a2738 [data] update searx.data - update_wikidata_units.py 2024-11-29 08:01:13 +01:00
return42
db60c91a94 [data] update searx.data - update_ahmia_blacklist.py 2024-11-29 08:00:56 +01:00
return42
2b9cc53082 [data] update searx.data - update_engine_descriptions.py 2024-11-29 07:59:55 +01:00
return42
a3d49d8d4f [data] update searx.data - update_firefox_version.py 2024-11-29 07:58:23 +01:00
Bnyro
0ca2520115 [feat] json/xpath engine: config option for method and body 2024-11-28 09:53:21 +01:00
Bnyro
5a9c1c6b5b [fix] crowdview engine: html tags in title and content 2024-11-28 06:19:55 +01:00
Markus Heiser
7b6b772e34 [fix] wikicommons engine: remove HTML tags from result items
BTW: humanize filesize (Bytes) to KB, MB, GB ..

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-28 06:05:45 +01:00
Markus Heiser
342d321196 [fix] google engine: remove <script> tags from result items
In some results, Google returns a <script> tag that must be removed before
extracting the content.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-27 13:49:45 +01:00
Austin-Olacsi
55481a6377 [fix] findthatmeme engine URLs have changed 2024-11-27 11:08:23 +01:00
Markus Heiser
78f5300830 [chore] drop sjp engine: WEB side has changed a long time ago
The WEB page (PL only) has changed and there is now also a kind of CAPTCHA.
There is currently no possibility to restore the function of this engine.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-26 15:45:02 +01:00
Markus Heiser
ac0c6cc2d1 [chore] remove invalid base_url from settings.yml engines
The engines do not have / do not need a property `base_url`, lets remove it from
the settings.yml

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-26 10:06:07 +01:00
Markus Heiser
36a6f9c95f [fix] engine: Library of Congress - image & thumb links
The properties `item.service_medium` and `item.thumb_gallery` are not given for
every result item.  It is more reliable to use the first (thumb) and
last (image) URL in the list of of URLs in `image_url`.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-26 09:36:59 +01:00
Bnyro
66f6495a22
[fix] duckduckgo extra: crashes and returns no results 2024-11-25 17:00:52 +01:00
Bnyro
5bf3fbc93b
[fix] openmetrics: value is None if there's no data 2024-11-25 16:57:03 +01:00
Bnyro
bad070b4bc [build] /static 2024-11-25 09:34:02 +01:00
Markus Heiser
cf8c36f351 [mod] add CSS (LESS) to xsl style to view rss in browser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-25 09:34:02 +01:00
Markus Heiser
5fbea0b62d [refactor] <type> element isn't a part of the RSS 2.0 spec [1]
[1] https://cyber.harvard.edu/rss/rss.html

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-25 09:34:02 +01:00
Bnyro
eb59b4604a [feat] rss: add xsl style to view rss in browser 2024-11-25 09:34:02 +01:00
Bnyro
98f9a380ed [chore] rss: rename from searx to SearXNG 2024-11-25 09:34:02 +01:00
Grant Lanham
c02268d56e [fix] remove unknown_params from preferences 2024-11-24 19:55:21 +01:00
Bnyro
8744dd3c71 [feat] metrics: support for open metrics 2024-11-24 14:25:49 +01:00
Bnyro
e4961142e3 [build] /static 2024-11-24 12:41:57 +01:00
Bnyro
f31a3a2053 [chore] *: fix typos detected by typos-cli 2024-11-24 12:41:57 +01:00
Markus Heiser
0253c10b52 [feat] engine: add adobe stock video and audio engines
The engine has been revised; there is now the option ``adobe_content_types``
with which it is possible to configure engines for video and audio from the
adobe stock.  BTW this patch adds documentation to the engine.

To test all three engines in one use a search term like::

    !asi !asv !asa sound

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-24 11:56:12 +01:00
Bnyro
f20a7632f1 [feat] engine: add adobe stock photos 2024-11-24 11:56:12 +01:00
Markus Heiser
0f9694c90b [clean] Internet Archive Scholar search API no longer exists
Engine was added in #2733 but the API does no longer exists. Related:

- https://github.com/searxng/searxng/issues/4038

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-23 17:59:38 +01:00
Markus Heiser
c4b874e9b0 [fix] engine Library of Congress: fix API URL loc.gov -> www.loc.gov
Avoid HTTP 404 and redirects. Requests to the JSON/YAML API use the base url [1]

    https://www.loc.gov/{endpoint}/?fo=json

[1] https://www.loc.gov/apis/json-and-yaml/requests/

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-23 13:02:24 +01:00
Markus Heiser
7c4e4ebd40 [log] warning with URL in case of 'raise_for_httperror'
In order to be able to implement error handling, it is necessary to know which
URL triggered the exception / the URL has not yet been logged.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-23 11:33:19 +01:00
searxng-bot
b8f1a329d3 [l10n] update translations from Weblate
6581d89b3 - 2024-11-21 - return42 <return42@users.noreply.translate.codeberg.org>
a342903eb - 2024-11-21 - return42 <return42@users.noreply.translate.codeberg.org>
61d3236b9 - 2024-11-21 - return42 <return42@users.noreply.translate.codeberg.org>
cd03e8cc5 - 2024-11-21 - return42 <return42@users.noreply.translate.codeberg.org>
a2399e23a - 2024-11-20 - tentsbet <tentsbet@users.noreply.translate.codeberg.org>
9a5bcc06d - 2024-11-17 - cherrad <cherrad@users.noreply.translate.codeberg.org>
4364e5ef8 - 2024-11-16 - DiamondBrain113 <DiamondBrain113@users.noreply.translate.codeberg.org>
e3a127ec8 - 2024-11-15 - KinoCineaste <KinoCineaste@users.noreply.translate.codeberg.org>
2024-11-22 10:02:42 +01:00
Markus Heiser
10d3af84b8 [fix] engine: duckduckgo - don't quote query string
The query string send to DDG must not be qouted.

The query string was URL-qouted in #4011, but the URL-qouted query string result
in unexpected *URL decoded* and other garbish results as reported in #4019
and #4020.  To test compare the results of a query like::

    !ddg Häuser und Straßen :de
    !ddg Häuser und Straßen :all
    !ddg 房屋和街道 :all
    !ddg 房屋和街道 :zh

Closed:

- [#4019] https://github.com/searxng/searxng/issues/4019
- [#4020] https://github.com/searxng/searxng/issues/4020

Related:

- [#4011] https://github.com/searxng/searxng/pull/4011

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-17 18:14:22 +01:00
searxng-bot
a345cbbe51 [l10n] update translations from Weblate
0216898a3 - 2024-11-14 - KhietVo <KhietVo@users.noreply.translate.codeberg.org>
3293db4c8 - 2024-11-14 - return42 <return42@users.noreply.translate.codeberg.org>
574e0d683 - 2024-11-13 - lrnz2 <lrnz2@users.noreply.translate.codeberg.org>
a32d9d158 - 2024-11-08 - Aadniz <Aadniz@users.noreply.translate.codeberg.org>
2024-11-15 13:20:52 +01:00
Nicolas Dato
abd9b271bc [fix] engine: duckduckgo - only uses first word of the search terms
during the revision in PR #3955 the query string was accidentally converted into
a list of words, further the query must be quoted before POSTed in the ``data``
field, see ``urllib.parse.quote_plus`` [1]

[1] https://docs.python.org/3/library/urllib.parse.html#urllib.parse.quote_plus

Closed: #4009
Co-Authored-by: @return42
2024-11-14 09:33:54 +01:00
Leo Liu
dfaf5868e2 [fix] settings.yml - enabled_plugins: document to reflect default settings
Remove 'Autodetect search language', which is no longer valid, from settings,
and add 'Unit converter plugin', which is now default enabled, to settings.
2024-11-10 16:09:41 +01:00
Leo Liu
b173f3a8b9 Fix scheduler.lua 2024-11-10 15:53:58 +01:00
searxng-bot
08c5f258d8 [l10n] update translations from Weblate
8d90a7e6d - 2024-11-06 - sahussawud <sahussawud@users.noreply.translate.codeberg.org>
41ee8bb0d - 2024-11-02 - laaknor <laaknor@users.noreply.translate.codeberg.org>
c1a30afab - 2024-11-02 - return42 <return42@users.noreply.translate.codeberg.org>
627ab7a8e - 2024-11-01 - zarlin <zarlin@users.noreply.translate.codeberg.org>
2024-11-08 08:45:07 +01:00
Bnyro
b07c0ae39f [fix] annas archive: crash when no thumbnail, differing results, paging 2024-11-01 12:49:33 +01:00
searxng-bot
cc148a76b0 [l10n] update translations from Weblate
a4cdaaa26 - 2024-10-30 - Juno Takano <jutty@users.noreply.translate.codeberg.org>
46bad3a79 - 2024-10-29 - saltsnorter <saltsnorter@users.noreply.translate.codeberg.org>
6a4096da9 - 2024-10-27 - Eryk Michalak <gnu.ewm@protonmail.com>
64815d956 - 2024-10-28 - ljansen <ljansen@users.noreply.translate.codeberg.org>
851ae554d - 2024-10-26 - return42 <return42@users.noreply.translate.codeberg.org>
24f16d5e3 - 2024-10-26 - return42 <return42@users.noreply.translate.codeberg.org>
8278d1cb9 - 2024-10-26 - Atul_Eterno <Atul_Eterno@users.noreply.translate.codeberg.org>
2024-11-01 08:30:38 +01:00
uply23333
fa108c140f [fix] google: display every result when keyword is contained in content field 2024-10-31 13:21:32 +01:00
Markus Heiser
fa4dfd4efe [fix] favicons: msgspec.ValidationError: Expected Path, got str - at $.favicons.cache.db_url
Closes: https://github.com/searxng/searxng/issues/3975
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 18:22:22 +01:00
Markus Heiser
b183e620d8 [refactor] engine: duckduckgo - https://html.duckduckgo.com/html
The entire source code of the duckduckgo engine has been reengineered and
purified.

1. DDG used the URL https://html.duckduckgo.com/html for no-JS requests whose
   response is also easier to parse than the previous
   https://lite.duckduckgo.com/lite/ URL

2. the bot detection of DDG has so far caused problems and often led to a
   CAPTCHA, this can be circumvented using `'Sec-Fetch-Mode'] = “navigate”`

Closes: https://github.com/searxng/searxng/issues/3927
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 14:56:27 +01:00
Markus Heiser
3e5621e1af [refactor] replace pydantic by msgspec
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-10-29 13:50:38 +01:00
return42
e392892578 [data] update searx.data - update_firefox_version.py 2024-10-29 09:30:40 +01:00
return42
68ed8245da [data] update searx.data - update_ahmia_blacklist.py 2024-10-29 09:29:58 +01:00
return42
2d748d1d74 [data] update searx.data - update_currencies.py 2024-10-29 09:29:18 +01:00