Commit Graph

5943 Commits

Author SHA1 Message Date
Bnyro 8579974f5e [feat] engines: add GMX search engine (#5967)
Notes:
- Safesearch doesn't seem to work properly?
- In theory multiple languages are supported, but even in the web UI, they don't work properly
- Possibly, we could cache the request hashes (h query parameter), I'm not sure if it ever changes
2026-04-17 07:00:21 +02:00
Markus Heiser ee66b070a9 [mod] aol engines: disable by default (#5975)
The AOL engines deliver no results or too many incorrect results; in #5972 it is
reported that the AOL-images do not work, and on AOL-web the language selection
seems to depend more on the IP than on the selected language / Locally, the
language selection works for me, on the public server only English results are
displayed, which significantly worsens the result list.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-04-13 11:04:11 +02:00
Bnyro 919aeae42a [mod] pexels: add default api key as fallback 2026-04-11 10:40:39 +02:00
Bnyro 20fc6fe80d [fix] pexels: circumvent botdetection by passing referer header
As a side effect, Cloudscraper is no longer needed.
It probably only ever worked by setting the correct request headers,
so we don't really need it since we can just set the right request
headers and ciphersuites ourselves.
2026-04-11 10:40:39 +02:00
Bnyro fb68010f72 [fix] tagesschau: parse error when there's no first sentence (#5959)
Example:

```json
{
    "sophoraId" : "rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102",
    "externalId" : "tagesschau_fm-story-rbb_park-toilette-klimafreundlich",
    "title" : "Von 24 Trockentoiletten in Berliner Parks bleiben acht im Betrieb",
    "date" : "2026-04-09T19:16:51.000+02:00",
    "teaserImage" : {
      "title" : "402109255",
      "copyright" : "dpa/Paul Zinken",
      "alttext" : "\"Toilette\" steht auf dem Schild an einer neuen Parktoilette in einem Park in Berlin. (Quelle: dpa/Paul Zinken)",
      "imageVariants" : {
        "1x1-144" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStQvU/1x1-144.jpg",
        "1x1-256" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStSJ8/1x1-256.jpg",
        "1x1-432" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStTkw/1x1-432.jpg",
        "1x1-640" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStU_E/1x1-640.jpg",
        "1x1-840" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStWZo/1x1-840.jpg",
        "16x9-256" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvh0M/16x9-256.jpg",
        "16x9-384" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvjXw/16x9-384.jpg",
        "16x9-512" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvlIQ/16x9-512.jpg",
        "16x9-640" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvmjA/16x9-640.jpg",
        "16x9-960" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvpk8/16x9-960.jpg",
        "16x9-1280" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSveow/16x9-1280.jpg",
        "16x9-1920" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvgNE/16x9-1920.jpg"
      },
      "type" : "image"
    },
    "tags" : [ {
      "tag" : "rbb"
    }, {
      "tag" : "Berlin"
    } ],
    "updateCheckUrl" : "https://www.tagesschau.de/api2u/rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102.json?view=hasChanged&lastKnown=C168EFEC89F7D1C16BC08D8E641A0503",
    "content" : [ {
      "value" : "Von 24 kostenlosen Trockentoiletten in Berliner Parks sind 16 Anlagen im März wieder abgebaut worden. Acht Toiletten werden nach Auskunft der Senatsverwaltung für Klimaschutz und Umwelt weiterbetrieben.",
      "type" : "text"
    }, {
      "value" : "Die Toiletten waren laut den Angaben der Senatsverwaltung Teil eines Pilotprojekts. Es startete im März 2023 und war zunächst als einjähriger Test angelegt. Für den Fall einer positiven Nutzung und eines reibungslosen Betriebs wurden vertraglich zwei Verlängerungsoptionen von jeweils einem weiteren Jahr vorgesehen. Diese Optionen seien in Anspruch genommen worden und nun ausgeschöpft.",
      "type" : "text"
    }, {
      "value" : "<h2>Nutzer waren zufrieden</h2>",
      "type" : "headline"
    }, {
      "value" : "Dabei waren die Nutzerinnen und Nutzer offensichtlich recht zufrieden mit den Klos, wie aus Befragungsdaten der Senatsverwaltung hervorgeht. Die Befragten bewerteten die Toiletten weitgehend als attraktiv. Auch die Sauberkeit und der Geruch wurden überwiegend positiv bewertet. [<a href=\"https://www.berlin.de/sen/uvk/mobilitaet-und-verkehr/infrastruktur/oeffentliche-toiletten/klimafreundliche-parktoiletten/\" type=\"extern\">berlin.de</a>]",
      "type" : "text"
    }, {
      "box" : {
        "text" : "<ul><br/><li>Lichtenberg: Naturerfahrungsraum Herzberge (neuer Standort)</li><br/><li>Mitte: Kulturforum (neuer Standort)</li><br/><li>Steglitz-Zehlendorf: Stadtpark Steglitz und Spielplatz am Lauenburger Platz</li><br/><li>Tempelhof-Schöneberg: Cheruskerpark und Heinrich-Lassen-Park</li><br/><li>Friedrichshain-Kreuzberg: Engelwiese Alt-Stralau</li><br/><li>Treptow-Köpenick: Wuhlheide an der Treskowallee</li><br/></ul>",
        "title" : "Diese Trockentoiletten werden weiterbetrieben",
        "infobox" : false
      },
      "type" : "box"
    }, {
      "value" : "<h2>Neues Vergabeverfahren für Parktoiletten</h2>",
      "type" : "headline"
    }, {
      "value" : "Im Anschluss an das Pilotprojekt sei geplant, im Rahmen eines Vergabeverfahrens neue Parktoiletten zu beschaffen, teilte ein Sprecher der Senatsverwaltung rbb|24 mit. Wie genau diese Anlagen aussehen sollen, wurde nicht gesagt. Die Versorgung solle aber durch \"modernere Anlagen mit höheren Kapazitäten und einer besseren Barrierefreiheit\" verbessert werden.<br /> <br />Das Vergabeverfahren wird den Angaben zufolge derzeit vorbereitet, sodass die ersten neuen Anlagen möglichst ab 2027 errichtet werden können.",
      "type" : "text"
    }, {
      "value" : "Sendung: rbb|24, 09.04.2026, 19:16 Uhr<br /> <br />Video: rbb|24, 09.04.2026, Johanna Steinlen",
      "type" : "text"
    } ],
    "tracking" : [ {
      "sid" : "app.inland.regional.berlin.rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102",
      "src" : "rbb",
      "ctp" : "nicht-definiert",
      "pdt" : "20260409T1920",
      "otp" : "meldung",
      "cid" : "rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102",
      "pti" : "Von_24_Trockentoiletten_in_Berliner_Parks_bleiben_acht_im_Betrieb",
      "bcr" : "nein",
      "type" : "generic",
      "av_full_show" : false
    } ],
    "topline" : "Berlin",
    "images" : [ {
      "title" : "402109255",
      "copyright" : "dpa/Paul Zinken",
      "alttext" : "\"Toilette\" steht auf dem Schild an einer neuen Parktoilette in einem Park in Berlin. (Quelle: dpa/Paul Zinken)",
      "imageVariants" : {
        "1x1-144" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStQvU/1x1-144.jpg",
        "1x1-256" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStSJ8/1x1-256.jpg",
        "1x1-432" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStTkw/1x1-432.jpg",
        "1x1-640" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStU_E/1x1-640.jpg",
        "1x1-840" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSStWZo/1x1-840.jpg",
        "16x9-256" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvh0M/16x9-256.jpg",
        "16x9-384" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvjXw/16x9-384.jpg",
        "16x9-512" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvlIQ/16x9-512.jpg",
        "16x9-640" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvmjA/16x9-640.jpg",
        "16x9-960" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvpk8/16x9-960.jpg",
        "16x9-1280" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSveow/16x9-1280.jpg",
        "16x9-1920" : "https://images.tagesschau.de/image/5dad7c26-72b0-4c5c-9758-cf3e351d86ac/AAABnXNCEmI/AAABnSSvgNE/16x9-1920.jpg"
      },
      "type" : "image"
    } ],
    "brandingImage" : {
      "title" : "Logo Rundfunk Berlin-Brandenburg",
      "copyright" : "rbb24",
      "alttext" : "Logo Rundfunk Berlin-Brandenburg",
      "imageVariants" : {
        "original" : "https://images.tagesschau.de/image/e03b1ea1-c03d-4d50-bfb2-41c40808e93a/AAABlaqAiSQ/AAABnR8VW9w/original.png"
      },
      "type" : "image"
    },
    "details" : "https://www.tagesschau.de/api2u/inland/regional/berlin/rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102.json",
    "detailsweb" : "https://www.tagesschau.de/inland/regional/berlin/rbb-von-24-trockentoiletten-in-berliner-parks-bleiben-acht-im-betrieb-102.html",
    "shareURL" : "https://www.rbb24.de/panorama/beitrag/2026/04/park-toilette-klimafreundlich.html",
    "geotags" : [ ],
    "regionId" : 3,
    "regionIds" : [ 3 ],
    "breakingNews" : false,
    "type" : "story"
  }
```
2026-04-11 09:34:22 +02:00
github-actions[bot] e094ed3976 [l10n] update translations from Weblate (#5966)
02aad3f5a - 2026-04-08 - AndersNordh <andersnordh@noreply.codeberg.org>
29686752b - 2026-04-05 - JanDziaslo <jandziaslo@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-04-11 09:01:18 +02:00
Esen 67af4894d4 [fix] google: switch to using "Google Go App" (NSTNWV) useragent 2026-04-10 10:09:02 +02:00
Ivan Gabaldon 08ef7a63d7 [enh] engine: rework lingva
lingva.thedaviddelta.com instance is dead, use lingva.ml
2026-04-07 15:49:46 +02:00
Aadniz 474b0a55b0 [fix] karmasearch engine: setting Referer header to bypass bot detection (#5953) 2026-04-05 03:59:39 +02:00
Nicolas Dato e92f6b70a0 [mod] duckduckgo: restore Sec-Fetch-* headers to prevent rate limits 2026-04-04 17:44:35 +02:00
github-actions[bot] c980fa1efc [l10n] update translations from Weblate (#5948)
81ade0dcf - 2026-03-31 - Linerly <linerly@noreply.codeberg.org>
6d96e9916 - 2026-03-30 - danilo-jlle <danilo-jlle@noreply.codeberg.org>
f2a7ef464 - 2026-03-29 - Maoyue_OUO <maoyue_ouo@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-04-03 23:02:03 +02:00
Robert Clabough bab3879cba [fix] tubearchivist engine: add trailing slash to API URL 2026-04-01 21:19:14 +02:00
github-actions[bot] 7ac4ff39fe [data] update searx.data - update_firefox_version.py (#5924)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-29 08:32:52 +02:00
github-actions[bot] ea6f491c93 [data] update searx.data - update_external_bangs.py (#5925)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-29 08:32:26 +02:00
github-actions[bot] 5ecf7515dc [data] update searx.data - update_gsa_useragents.py (#5926)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-29 08:31:52 +02:00
github-actions[bot] c8208fa8bb [data] update searx.data - update_ahmia_blacklist.py (#5927)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-29 08:05:41 +02:00
github-actions[bot] 40e5ba9fdc [data] update searx.data - update_currencies.py (#5930)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-29 08:04:15 +02:00
github-actions[bot] ae51c349fd [l10n] update translations from Weblate (#5917)
b17f6ca00 - 2026-03-26 - bittin <bittin@noreply.codeberg.org>
e43bc66a4 - 2026-03-26 - Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
41cb62330 - 2026-03-26 - gallegonovato <gallegonovato@noreply.codeberg.org>
48308f385 - 2026-03-25 - Outbreak2096 <outbreak2096@noreply.codeberg.org>
a91644d65 - 2026-03-25 - Stephan-P <stephan-p@noreply.codeberg.org>
af44a9e71 - 2026-03-25 - kratos <makesocialfoss32@keemail.me>
f5be3ecd0 - 2026-03-25 - ghose <ghose@noreply.codeberg.org>
7e4a2e0a5 - 2026-03-25 - return42 <return42@noreply.codeberg.org>
6768f2fbc - 2026-03-25 - Fjuro <fjuro@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-28 18:11:02 +01:00
Markus Heiser e734424006 [fix] engine - karmasearch crash when searching with long queries (#5912)
Karmasearch seem to crash when searching with long queries >= 100 characters.
The returned JSON is exactly this `["",[]]`, which will crash when trying to
access `resp.json()["results"]`

Close: https://github.com/searxng/searxng/issues/5911

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-26 15:54:32 +01:00
Bnyro fe1d6d9c48 [fix] unsplash: fix engine due to anubis bot blocking (#5907)
Unsplash started using [Anubis](https://anubis.techaro.lol/)
for blocking crawlers. Therefore, requests using common
user agents (e.g. Firefox, Chrome) must pass a JavaScript
challenge.

However, other user agents seem unaffected for now, hence
settings the UA to something different does still work.
2026-03-25 20:36:17 +01:00
Markus Heiser 0dc032435a [chore] make data.traits - add regions from karmasearch
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-25 19:45:46 +01:00
Bnyro bd8106e40e [feat] engines: add karmasearch engine (brave mirror) 2026-03-25 19:45:46 +01:00
Markus Heiser 541c6c3cb1 [chore] make data.traits - fix bing engine traits (#5903)
bing's traits.languages has been removed in #5793

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-25 12:09:43 +01:00
dependabot[bot] 02ba387865 [upd] web-client (simple): Bump the group (#5874)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-24 22:17:07 +01:00
Markus Heiser c52d23f262 [fix] clean up and update python requirements (#5899)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-24 21:41:39 +01:00
Bnyro 220c42c8e9 [feat] engines: add support for aol.com (#5882)
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-24 20:44:15 +01:00
Markus Heiser 054174a19d [build] /static 2026-03-24 20:21:27 +01:00
Ruben D. 3dc4d5daa8 [mod] add manifest.json template and route (#5859)
URLs, name and colors are automatically rendered into manifest.json.
Furthermore user preference of theme (light, dark, black) and theme colors are
respected.  Theme colors can be set in settings.yml
2026-03-24 20:21:27 +01:00
Markus Heiser 924fc52f54 [build] /static 2026-03-24 19:39:11 +01:00
Markus Heiser 8d44ff51e2 [mod] remove the "Submit a new issue on Github" form (#5896)
Submitting an issue on GitHub isn't a end user task .. most issue reports coming
from this form are not filled out, since end users are not familiar with the
needs of a developer community.

Closes: https://github.com/searxng/searxng/issues/5820
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-24 19:39:11 +01:00
Bnyro f8056b5e44 [chore] make data.traits 2026-03-24 15:55:54 +01:00
Bnyro 71cea1d87f [feat] engines: add boardreader engine (#5881) 2026-03-24 15:55:54 +01:00
Markus Heiser c4f51aa4ac [fix] google engine - don't set __Secure-ENID in the HTTP header (#5894)
PR #5892 only deepends on the UA and the __Secure-ENID is not needed [1].

[1] https://github.com/searxng/searxng/pull/5892#issuecomment-4114835195

Suggested-by: @yeyuchen198

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-24 15:16:47 +01:00
mg95 2c1ce3bd37 [fix] google: switch to using "Google App" for Android useragent (#5892)
I found a bypass using the Android Google App this time. However, unlike the iPhone GSA method, this one does have rate limits. Although it took a couple of hundred consecutive requests to trigger them.
2026-03-23 14:55:48 +01:00
Aadniz 2bf5f00e7d [build] /static 2026-03-20 16:31:32 +01:00
dependabot[bot] 3810dc9d1c [upd] web-client (simple): Bump vite in /client/simple (#5856)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.0-beta.16 to 8.0.0.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/create-vite@8.0.0/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.0
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-18 15:14:37 +01:00
Ivan Gabaldon 6521190bb4 [enh] engines: rework bing engine (#5793)
* [enh] engines: rework bing engine

Only Bing-Web has been reworked.

Some features now require JavaScript (paging and time-range results).
Cookies no longer work, parameters such as `cc`, `ui`, ... alter the results.

The engine only appears to use the locale from `Accept-Language` header properly.

The rest of Bing's child engines (Bing-Image, Bing-Video, ...) seem to benefit
from using `mkt` param in conjunction with the `Accept-Language` header
override, although Bing-Web does not (?)

* [enh] explicit mkt

* [fix] engines: bing_videos.py

https://github.com/searxng/searxng/pull/5793#pullrequestreview-3881883250
2026-03-18 14:55:25 +01:00
Markus Heiser 2bb8ac17c6 [fix] Youtube video - "Error 153" send HTTP Referrer (referrerpolicy) (#5858)
For videos from ``www.youtube.com`` this patch adds ``referrerpolicy`` and other
by YT required permission policies for the iframe.

API Clients that use the YouTube embedded player (including the YouTube IFrame
Player API) must provide identification through the HTTP ``Referer`` request
header[1].

If the error still occurs, check if server headers (e.g., in .htaccess or Nginx)
are overriding the referrer policy[2].

[1] https://developers.google.com/youtube/terms/required-minimum-functionality#embedded-player-api-client-identity
[2] hint comes from AI: https://chat.mistral.ai
[3] https://developers.google.com/youtube/player_parameters


Close: https://github.com/searxng/searxng/issues/5844

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-03-17 19:52:46 +01:00
Aadniz 4c4ed4b198 [fix] google engine: Result image thumbnails 2026-03-16 23:35:33 +01:00
Renaud Allard 23fb76f08f Fix XSS via unsafe rendering of untrusted external data in templates (#5826)
Remove |safe filter from 6 template locations where data from external
search engine APIs was rendered as raw HTML without sanitization. Jinja2
autoescape now properly escapes these fields.

The |safe filter was originally added in commit 213041adc (March 2021)
by copying the pattern from result.title|safe and result.content|safe.
However, title and content are pre-escaped via escape() in webapp.py
lines 704-706 before highlight_content() adds trusted <span> tags for
search term highlighting. The metadata, info.value, link.url_label,
repository, and filename fields never go through any escaping and flow
directly from external API responses to the template.

Affected templates and their untrusted data sources:
- macros.html: result.metadata from DuckDuckGo, Reuters, Presearch,
  Podcast Index, Fyyd, bpb, moviepilot, mediawiki, and others
- paper.html: result.metadata from academic search engines
- map.html: info.value and link.url_label from OpenStreetMap
  user-contributed extratags
- code.html: result.repository and result.filename from GitHub API

Example exploit: a search engine API returning
metadata='<img src=x onerror=alert(document.cookie)>' would execute
arbitrary JavaScript in every user's browser viewing that result.
2026-03-13 13:28:31 +01:00
github-actions[bot] 867a43ac1f [l10n] update translations from Weblate (#5857)
7bbad1a8d - 2026-03-10 - omeritzics <omeritzics@noreply.codeberg.org>
68a483eec - 2026-03-08 - Stephan-P <stephan-p@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-13 12:43:21 +01:00
Bnyro e30d490429 [mod] right dao: remove engine (#5849)
Since about a month, the website just says "temporarily unavailable", so it's safe to assume that it's just no longer working

Related:

- https://github.com/searxng/searxng/pull/3798
2026-03-12 15:20:53 +01:00
SeriousConcept1134 8b95b2058b [fix] google engines: update XPaths for modern mobile UI (#5836)
Google recently changed the DOM structure for mobile-centric responses, causing the `google_videos` engine to return zero results and the main `google` engine to drop the majority of its results (due to missing snippets or failed URL parsing). These changes restore the functionality and improve the result count for both engines.

This patch updates the parsing logic for both the `google` and `google_videos` engines to handle the modern HTML structure returned by Google when using GSA (Google Search App) User-Agents.

**Specific changes include:**

* **Google Videos (`gov`)**:
    * Updated title XPath to support `role="heading"`.
    * Improved URL extraction to correctly decode Google redirectors (`/url?q=...`) using `unquote`.
    * Added support for the `WRu9Cd` class to capture publication metadata (author/date).
    * Broadened thumbnail search and added a fallback to YouTube's `hqdefault.jpg`.

* **Google Web**:
    * Relaxed the strict snippet (`content`) requirement. Valid results are no longer discarded if a snippet is missing in the mobile UI.
    * Hardened URL extraction to handle both direct and redirected URLs safely.
    * Improved thumbnail extraction by searching the entire result block.
2026-03-10 09:05:54 +01:00
vojkovic a563127a26 [fix] engines: remove google arc/async params 2026-03-08 23:22:32 +08:00
Brock Vojkovic 68ff08f224 [mod] drop fasttext-predict (#5795)
Removes the `fasttext-predict` dependency and the language detection code.

If a user now selects `auto` for the search language, the detected language now
falls back directly to the `Accept-Language` header sent by the browser (which was already the fallback when fasttext returned no result).

- fasttext's [language detection is unreliable](https://github.com/searxng/searxng/issues/4195) for some languages, especially short search queries, and in particular for queries containing proper names which is a common case.
- `fasttext-predict` consumes [significant memory](https://github.com/searxng/searxng/pull/1969#issuecomment-1345366676) without offering users much real value.
- the upstream fasttext project was archived by Meta in 2024
- users already have two better alternatives: the `Accept-Language` header and the search-syntax language prefix (e.g. `:fr` or `:de`).

Related: https://github.com/searxng/searxng/issues/4195
Closes: https://github.com/searxng/searxng/issues/5790
2026-03-06 15:40:44 +01:00
github-actions[bot] 25e457c8d5 [l10n] update translations from Weblate (#5812)
5a33207b4 - 2026-03-03 - Linerly <linerly@noreply.codeberg.org>
b84870677 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
8862bb219 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
f64625f8b - 2026-03-01 - return42 <return42@noreply.codeberg.org>
5424e5190 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
999ed9500 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
55f674a81 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
ccc5398f1 - 2026-03-01 - return42 <return42@noreply.codeberg.org>
eefcd7854 - 2026-02-28 - cdli <cdli@noreply.codeberg.org>
5985f8df0 - 2026-02-27 - boradog <boradog@noreply.codeberg.org>
cd0213e39 - 2026-02-28 - DeckPacker <deckpacker@noreply.codeberg.org>
94c0b5fc8 - 2026-02-28 - Serpensin <serpensin@noreply.codeberg.org>
a86b8d609 - 2026-02-28 - DeckPacker <deckpacker@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-06 08:56:15 +01:00
Bnyro 56e565a582 [feat] autocomplete: add bing autocompleter 2026-03-05 20:56:02 +01:00
Ivan Gabaldon 380f1c4a49 [upd] engines: sync "aa" mirrors (#5807) 2026-03-05 19:08:05 +01:00
github-actions[bot] b5c1c28048 [data] update searx.data - update_engine_descriptions.py (#5791)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-03-03 22:36:53 +01:00
Ivan Gabaldon fc53162eec [data] update searx.data - update_engine_traits.py 2026-03-03 20:31:25 +01:00