summaryrefslogtreecommitdiff
path: root/searx/plugins
AgeCommit message (Collapse)Author
2022-09-27[fix] typos / reported by @kianmeng in searx PR-3366Markus Heiser
[PR-3366] https://github.com/searx/searx/pull/3366 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-09-23oa_doi_rewrite: add the doi to the result when it is found.Alexandre FLAMENT
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-08-25[mod] limiter plugin: Accept-Encoding handlingLéon Tiekötter
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-07-19[mod] add tor_check plugin - convenient tor checking trough searxngSolirs
2022-07-05fix: return body on limiter block so there is not just a blank pagemrpaulblack
2022-06-06Merge pull request #1047 from return42/redis-libAlexandre Flament
Add a redis library to generalize DB functions we need in SearXNG.
2022-06-03[fix] prepare for pylint 2.14.0Markus Heiser
Remove issue reported by Pylint 2.14.0: - no-self-use: has been moved to optional extension [1] - The refactoring checker now also raises 'consider-using-generator' messages for max(), min() and sum(). [2] .pylintrc: - <option name>-hint has been removed since long, Pylint 2.14.0 raises an error on invalid options - bad-continuation and bad-whitespace have been removed [3] [1] https://pylint.pycqa.org/en/latest/whatsnew/2/2.14/summary.html#removed-checkers [2] https://pylint.pycqa.org/en/latest/whatsnew/2/2.14/full.html#what-s-new-in-pylint-2-14-0 [2] https://pylint.pycqa.org/en/latest/whatsnew/2/2.6/summary.html#summary-release-highlights Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-05-30[mod] plugins/limiter.py - use searx.redislib.incr_sliding_windowMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-05-10Fix typoÉmilien Devos
2022-05-07theme: remove __common__Alexandre Flament
2022-03-25[doc] add some documentation about the limiter plugin (and redis)Markus Heiser
Requested-by: https://github.com/searxng/searxng/discussions/993#discussioncomment-2396914 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-20[mod] infinite_scroll as preferenceAlexandre Flament
* oscar theme: code from searx/plugins/infinite_scroll.py * simple theme: new implementation Co-authored-by: Markus Heiser <markus.heiser@darmarIT.de>
2022-02-18Merge pull request #899 from dalf/limiter_updateAlexandre Flament
[limiter] update
2022-02-18[mod] templates: rename field for <iframe> URL to iframe_srcMarkus Heiser
Rename result field data_src to iframe_src Suggested-by: @dalf https://github.com/searxng/searxng/pull/882#issuecomment-1037997402 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-18[fix] hostname_replace.py: don't stop replace URL in fieldsMarkus Heiser
This is a rewrite of the hostname_replace.py that: - don't stop to replace URL in fields ('data_src', 'audio_src') if there isn't a 'parsed_url', - adds a comment about keep or remove a result from the result list - adds a loop over ['data_src', 'audio_src'] instead of doubling code lines Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-17[limiter] updateAlexandre Flament
2022-02-13[mod] result_templates/default.html replace embedded HTML by data_src audio_srcMarkus Heiser
Embedded HTML breaks SearXNG architecture. To modularize, HTML is generated in the templates (oscar & simple) and result parameter 'embedded' is replaced by 'data_src' (and 'audio_src'), an URL for embedded content (<iframe>). Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-13[mod] hostname_replace: replace hostnames in result's data_src paramMarkus Heiser
To test you need to redirect embeded videos (e.g.) from youtube to a invidios instance. Search for videos using engine `!youtube lebowski`. The result URLs and the embeded videos should link to the invidios instance. Here is an example of such a `hostname_replace` configuration:: hostname_replace: # youtube --> Invidious '(.*\.)?youtube-nocookie\.com': 'invidio.xamh.de' '(.*\.)?youtube\.com$': 'invidio.xamh.de' '(.*\.)?invidious\.snopyta\.org$': 'invidio.xamh.de' '(.*\.)?vid\.puffyan\.us': 'invidio.xamh.de' '(.*\.)?invidious\.kavin\.rocks$': 'invidio.xamh.de' '(.*\.)?inv\.riverside\.rocks$': 'invidio.xamh.de' Closes: https://github.com/searxng/searxng/issues/873 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-12plugin limiter: check only /image_proxy and /searchAlexandre Flament
also adjust the number of req/time
2022-02-02[enh] limiter pluginAlexandre Flament
can replace filtron: * rate limite the number of request per IP and per (IP, User-Agent) * block some bots use Redis data stored in Redis never contains the IP addresses, only HMAC using the secret_key Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2022-01-17[typing] add optional attrs to PluginMartin Fischer
2022-01-06[refactor] add type hints & remove Setting._post_initMartin Fischer
Previously the Setting classes used a horrible _post_init hack that prevented proper type checking.
2021-12-27[format.python] initial formatting of the python codeMarkus Heiser
This patch was generated by black [1]:: make format.python [1] https://github.com/psf/black Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-12-27[format.python] disable py code formatting for some hunks of codeMarkus Heiser
Disable the python code formatting from python-black, where the readability of code suffers by formatting. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-10-07[mod] searx.plugins.prepare_package_resources() - use generatorsMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-10-07[fix] searx.plugins.initialize() - don't miss module & module-nameMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-10-06plugins: refactor initializationAlexandre Flament
add a new function "init" call when the app starts. The function can: * return False to disable the plugin. * modify the Flask app.
2021-09-11[enh] add hostname_replace pluginAlexandre Flament
* backport of https://github.com/searx/searx/pull/2724 * allow to remove result if the replacement is the boolean value false
2021-09-09[mod] ahmia_filter: use on_result instead of post_searchAlexandre Flament
see commit 6c9ae7911e9639bc46cd53af215734b4bdb61ba9
2021-09-07[mod] oa_doi_rewrite plugin: get_doi_resolver: remove args parameterAlexandre Flament
doi_resolvers.get_value('preferences') already contains the value from request.args.get('doi_resolver')
2021-08-14[mod] plugins: minor changeAlexandre Flament
required attributes: display a different message when the attribute has the wrong type
2021-06-17[mod] oscar theme: /preferences : HTML detail order match visual tabsAlexandre Flament
First details about the general tab, then detail about UI tab, etc... No functionnal change
2021-06-17[mod] oscar theme /preferences: reorganize the preferencesAlexandre Flament
close #115
2021-06-01[mod] move all default settings into searx.settings_defaultsAlexandre Flament
2021-04-22[drop] plugin HTTPS rewrite - rule base is to old (update is to big)Markus Heiser
The usefulness of the _HTTPS rewrite_ plugin is questionable: - the 36 rule files have not been updated since 2015 [1] - actual there are 23760 rule files in the https-everywhere repo [2] For the first, we can remove this plugin. For a complete new implementation, it might be good to know that there is a project "https-everywhere : Privacy for Pythons" [3] related: https://github.com/return42/searx-next/issues/8 [1] https://github.com/return42/searx-next/tree/d187a1d/searx/plugins/https_rules [2] https://github.com/EFForg/https-everywhere/tree/master/src/chrome/content/rules [3] https://github.com/jayvdb/https-everywhere-py Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-04-06Remove hubsbpot tracking URL params3nprob
More information here: https://knowledge.hubspot.com/settings/how-do-i-create-a-tracking-url https://knowledge.hubspot.com/ads/ad-tracking-in-hubspot https://knowledge.hubspot.com/ctas/calls-to-action-frequently-asked-questions https://meta.stackexchange.com/questions/263392/what-are-these-very-long-parameters-in-so-careers-feedback-always-welcome-url
2021-04-04[fix] default_doi_resolver in preferencesMarkus Heiser
Instead of a hard-coded `oadoi.org` default, use the default value from `settings.yml`. Fix an issue in the themes: The replacement 'current_doi_resolver' contains the doi_resolver_url, not the name of the DOI resolver. Compare return value of:: searx.plugins.oa_doi_rewrite.get_doi_resolver(...) Fix a typo in `get_doi_resolver(..)`: suggested by @kvch: *L32 should set doi_resolver not doi_resolvers* Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-01[mod] pylint: numerous minor code fixesAlexandre Flament
2020-11-14[mod] remove unused importAlexandre Flament
use from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url # NOQA so it is possible to easily remove all unused import using autoflake: autoflake --in-place --recursive --remove-all-unused-imports searx tests
2020-10-27[mod] ahmia_filter.py: minor changesAlexandre Flament
- use result['parsed_url'] - load ahmia_blacklist.txt in searx.datae
2020-10-25add Ahmia filter plugin for onion resultsMarc Abonce Seguin
2020-10-24[fix] code styleVenca24
2020-10-23[mod] adapt hash plugin to current version of searxVenca24
2020-10-23[fix] hash pluginVenca24
2020-10-23[fix] code styleVenca24
2020-10-23[fix] hash pluginVenca24
2020-10-23[enh] add plugin converting strings into hash digestsVenca24
2020-10-09[enh] add ability to set enabled plugins from settings - closes #1613 #778Adam Tauber
2020-09-10Drop Python 2 (4/n): SearchQuery.query is a str instead of bytesDalf
2020-09-10Drop Python 2 (1/n): remove unicode string and url_utilsDalf