summaryrefslogtreecommitdiff
path: root/searx/data/engine_traits.json
AgeCommit message (Collapse)Author
2025-03-22[fix] make data.traits - partial revert of commit 30a8204Markus Heiser
The entries in the catalog of search languages are build up from the "Engine Traits" [1] and which entries are included in the catalog is controlled qby two threshold values [2]. If possible, the values should ensure that no languages or regions disappear from the catalog of search languages [3]. The threshold values should have been adjusted in commit 30a8204: - ``min_eng_per_region = 18`` - ``min_eng_per_lang = 22`` Because the threshold values were not adjusted, many entries were missing in the search language catalog. This bug has been fixed with this patch: the threshold values have been adjusted and the catalog of search languages has been completed again. [1] https://docs.searxng.org/dev/engines/enginelib.html#module-searx.enginelib.traits [2] https://github.com/searxng/searxng/blob/96a6e3dcb2283fa7ad9db4172a00582073a166d7/searxng_extra/update/update_engine_traits.py#L104-L105 [3] https://github.com/searxng/searxng/blob/master/searx/sxng_locales.py Closes: https://github.com/searxng/searxng/issues/4519 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-03-01[data] update searx.data - update_engine_traits.pyreturn42
2025-01-29[data] update searx.data - update_engine_traits.pyreturn42
2025-01-13[data] update searx.data - make data.allMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-12-29[data] update searx.data - update_engine_traits.pyMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-11-29[data] update searx.data - update_engine_traits.pyreturn42
2024-10-29[data] update searx.data - update_engine_traits.pyreturn42
2024-10-15[data] update searx.data - update_engine_traits.pyMarkus Heiser
Patches generated by:: make data.traits Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-09-29[data] update searx.data - update_engine_traits.pyMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-09-29[data] update searx.data - update_engine_traits.pyreturn42
2024-09-15[data] update searx.data - update_engine_traits.pyMarkus
2024-07-29[data] update searx.data - update_engine_traits.pyMarkus Heiser
$ make data.traits Last GH action has been failed [1], the bugfixes from aa05685cc were necessary to update the data. [1] https://github.com/searxng/searxng/actions/runs/10135834050/job/28023757191 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-06-29[data] update searx.data - update_engine_traits.pyreturn42
2024-06-25[data] update searx.data - update_engine_traits.pyMarkus Heiser
$ make data.traits Last GH action has been failed [1], the bugfixes from - https://github.com/searxng/searxng/pull/3611 - https://github.com/searxng/searxng/pull/3612 were necessary to update the data. [1] https://github.com/searxng/searxng/actions/runs/9278028691/job/25528337485 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-05-29[data] update searx.data - update_engine_traits.pyMarkus Heiser
$ make data.traits Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-04-29[data] update searx.data - update_engine_traits.pyreturn42
2024-03-29[data] update searx.data - update_engine_traits.pyreturn42
2024-03-10[data] update searx.data - update_engine_traits.pyreturn42
2024-01-29Update searx.data - update_engine_traits.pydalf
2023-12-24Update searx.data - update_engine_traits.pyMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-10-29Update searx.data - update_engine_traits.pydalf
2023-10-09[feat] duckduckgo: support for videos and newsBnyro
2023-10-05[mod] engine - simplify region & lang handling, make filters configurableMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-10-01[fix] Revision of the Bing enginesMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-29Update searx.data - update_engine_traits.pydalf
2023-09-27Update searx.data - update_engine_traits.pyMarkus Heiser
Update searx.data - update_engine_traits.py Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-27[fix] engine annas archive - fetch traits (modified xpath selectors)Markus Heiser
Anna’s Archive has cleaned up their languages, available file extensions and changed the HTML form. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-13[mod] make data.traits: add OdyseeBnyro
2023-08-08[mod] brave engines: add fetch_traits() / improve language supportMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-07-07[feat] engine: re-enables z-library (zlibrary-global.se)Paolo Basso
- re-enables z-library as the new domain zlibrary-global.se is now available from the open web. The announcement of the domain: https://www.reddit.com/r/zlibrary/comments/13whe08/mod_note_zlibraryglobalse_domain_is_officially/ It is an official domain, it requires to log in to the "personal" subdomain only to download files, but the search works. - changes the result template of zlibrary to paper.html, filling the appropriate fields - implements language filtering for zlibrary - implement zlibrary custom filters (engine traits) - refactor and document the zlibrary engine
2023-06-29[mod] engine: Anna's Archive - fetch search arguments from search formMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-06-28[upd] make data.allMarkus Heiser
- ahmia_blacklist.txt - currencies.json - engine_descriptions.json - engine_traits.json - osm_keys_tags.json - useragents.json Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-05-29Update searx.data - update_engine_traits.pydalf
2023-04-29Update searx.data - update_engine_traits.pydalf
2023-04-15[upd] make data.traits --> searx/data/engine_traits.jsonMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24Update searx.data - update_engine_traits.pydalf
2023-03-24[mod] remove obsolete EngineTraits.supported_languagesMarkus Heiser
All engines has been migrated from ``supported_languages`` to the ``fetch_traits`` concept. There is no longer a need for the obsolete code that implements the ``supported_languages`` concept. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Archlinux Wiki: improved request API & upgrade to data_type: traits_v1Markus Heiser
re-implementation of the Archlinux Wiki: - fetch_traits(): fetch languages, wiki URLs and title arguments - add content field to the result list - add documentation Wikis from wiki.archlinux.fr, wiki.archlinux.ro, archtr.org/wiki do no longer exists (has been merged in the main wiki). Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] SepiaSearch: re-engineered & upgrade to data_type: traits_v1Markus Heiser
- fetch_traits() SepiaSearch and Peertube are using identical languages. Replace module's dictionary `supported_languages` by `engine.traits.languages` (data_type: `traits_v1`). - fixed code to pass pylint - request(): add argument boostLanguages - response(): is replaced by peertube's video_response() function, which adds metadata from channel name, host & tags Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Dailymotion: improved request API & upgrade to data_type: traits_v1Markus Heiser
- fetch_traits(): fetch locales (and languages) from dailymotion API - removed obsolete data-type "supported_languages" - add documentation - improved argument list of the HTTP request: - add argument: family_filter_map - add conditional argument: localization Don't add localization and country arguments if the user does select a language (:de, :en, ..) - improve code quality (mainly improve readability) Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Google: reversed engineered & upgrade to data_type: traits_v1Markus Heiser
Partial reverse engineering of the Google engines including a improved language and region handling based on the engine.traits_v1 data. When ever possible the implementations of the Google engines try to make use of the async REST APIs. The get_lang_info() has been generalized to a get_google_info() function / especially the region handling has been improved by adding the cr parameter. searx/data/engine_traits.json Add data type "traits_v1" generated by the fetch_traits() functions from: - Google (WEB), - Google images, - Google news, - Google scholar and - Google videos and remove data from obsolete data type "supported_languages". A traits.custom type that maps region codes to *supported_domains* is fetched from https://www.google.com/supported_domains searx/autocomplete.py: Reversed engineered autocomplete from Google WEB. Supports Google's languages and subdomains. The old API suggestqueries.google.com/complete has been replaced by the async REST API: https://{subdomain}/complete/search?{args} searx/engines/google.py Reverse engineering and extensive testing .. - fetch_traits(): Fetch languages & regions from Google properties. - always use the async REST API (formally known as 'use_mobile_ui') - use *supported_domains* from traits - improved the result list by fetching './/div[@data-content-feature]' and parsing the type of the various *content features* --> thumbnails are added searx/engines/google_images.py Reverse engineering and extensive testing .. - fetch_traits(): Fetch languages & regions from Google properties. - use *supported_domains* from traits - if exists, freshness_date is added to the result - issue 1864: result list has been improved a lot (due to the new cr parameter) searx/engines/google_news.py Reverse engineering and extensive testing .. - fetch_traits(): Fetch languages & regions from Google properties. *supported_domains* is not needed but a ceid list has been added. - different region handling compared to Google WEB - fixed for various languages & regions (due to the new ceid parameter) / avoid CONSENT page - Google News do no longer support time range - result list has been fixed: XPath of pub_date and pub_origin searx/engines/google_videos.py - fetch_traits(): Fetch languages & regions from Google properties. - use *supported_domains* from traits - add paging support - implement a async request ('asearch': 'arc' & 'async': 'use_ac:true,_fmt:html') - simplified code (thanks to '_fmt:html' request) - issue 1359: fixed xpath of video length data searx/engines/google_scholar.py - fetch_traits(): Fetch languages & regions from Google properties. - use *supported_domains* from traits - request(): include patents & citations - response(): fixed CAPTCHA detection (Scholar has its own CATCHA manager) - hardening XPath to iterate over results - fixed XPath of pub_type (has been change from gs_ct1 to gs_cgt2 class) - issue 1769 fixed: new request implementation is no longer incompatible Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] DuckDuckGo: reversed engineered & upgrade to data_type: traits_v1Markus Heiser
Partial reverse engineering of the DuckDuckGo (DDG) engines including a improved language and region handling based on the enigne.traits_v1 data. - DDG Lite - DDG Instant Answer API - DDG Images - DDG Weather docs/src/searx.engine.duckduckgo.rst: Online documentation of the DDG engines (make docs.live) searx/data/engine_traits.json Add data type "traits_v1" generated by the fetch_traits() functions from: - "duckduckgo" (WEB), - "duckduckgo images" and - "duckduckgo weather" and remove data from obsolete data type "supported_languages". searx/autocomplete.py: Reversed engineered Autocomplete from DDG. Supports DDG's languages. searx/engines/duckduckgo.py: - fetch_traits(): Fetch languages & regions from DDG. - get_ddg_lang(): Get DDG's language identifier from SearXNG's locale. DDG defines its languages by region codes. DDG-Lite does not offer a language selection to the user, only a region can be selected by the user. - Cache ``vqd`` value: The vqd value depends on the query string and is needed for the follow up pages or the images loaded by a XMLHttpRequest (DDG images). The ``vqd`` value of a search term is stored for 10min in the redis DB. - DDG Lite engine: reversed engineered request method with improved Language and region support and better ``vqd`` handling. searx/engines/duckduckgo_definitions.py: DDG Instant Answer API The *instant answers* API does not support languages, or at least we could not find out how language support should work. It seems that most of the features are based on English terms. searx/engines/duckduckgo_images.py: DDG Images Reversed engineered request method. Improved language and region handling based on cookies and the enigne.traits_v1 data. Response: add image format to the result list searx/engines/duckduckgo_weather.py: DDG Weather Improved language and region handling based on cookies and the enigne.traits_v1 data. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Startpage: reversed engineered & upgrade to data_type: traits_v1Markus Heiser
One reason for the often seen CAPTCHA of the Startpage requests are the incomplete requests SearXNG sends to startpage.com: this patch is a complete new implementation of the ``request()`` function, reversed engineered from the Startpage's search form. The new implementation: - use traits of data_type: traits_v1 and drop deprecated data_type: supported_languages - adds time-range support - adds save-search support - fix searxng/searxng/issues 1884 - fix searxng/searxng/issues 1081 --> improvements to avoid CAPTCHA In preparation for more categories (News, Images, Videos ..) from Startpage, the variable ``startpage_categ`` was set up. The default value is ``web`` and other categories from Startpage are not yet implemented. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] wikipedia & wikidata: upgrade to data_type: traits_v1Markus Heiser
BTW this fix an issue in wikipedia: SearXNG's locales zh-TW and zh-HK are now using language `zh-classical` from wikipedia (and not `zh`). Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] bing: add time_range support & upgrade to data_type: traits_v1Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Wikipedia: fetch engine traits (data_type: supported_languages)Markus Heiser
Implements a fetch_traits function for the Wikipedia engines. .. note:: Does not include migration of the request methode from 'supported_languages' to 'traits' (EngineTraits) object! Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] Google: fetch engine traits (data_type: supported_languages)Markus Heiser
Implements a fetch_traits function for the Google engines. .. note:: Does not include migration of the request methode from 'supported_languages' to 'traits' (EngineTraits) object! Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] DuckDuckGo: fetch engine traits (data_type: supported_languages)Markus Heiser
Implements a fetch_traits function for the DuckDuckGo engines. .. note:: Does not include migration of the request methode from 'supported_languages' to 'traits' (EngineTraits) object! Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] yahoo: fetch engine traits (data_type: traits_v1)Markus Heiser
Implements a fetch_traits function for the Yahoo engine. .. note:: Includes migration of the request methode from 'supported_languages' to 'traits' (EngineTraits) object! Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24[mod] qwant: fetch engine traits (data_type: traits_v1)Markus Heiser
Implements a fetch_traits function for the Qwant engines. .. note:: Includes migration of the request methode from 'supported_languages' to 'traits' (EngineTraits) object! Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>