Privacy-respecting, hackable metasearch engine / pronunciation səːks.
If you are looking for running instances, ready to use, then visit searx.space.
Otherwise jump to the user, admin and developer handbooks you will find on our homepage.
Privacy-respecting, hackable metasearch engine / pronunciation səːks.
If you are looking for running instances, ready to use, then visit searx.space.
Otherwise jump to the user, admin and developer handbooks you will find on our homepage.
This PR (partial) address (and/or closes) #1795, #1785, #1759, #1901, #1874, #1795, Cent OS wiki
Update 13. Apr. 2020:
This PR covers the various:
It is rewrite of the installation instructions. For a convenience setup of all services, bash scripts exists. All the scripts and documentation has been tested in LXC.
For more see https://github.com/asciimoo/searx/pull/1803#issuecomment-616105583
update: merged into the searx-next branch
I have switched from one instance to another when Google search doesn't show up, but inevitably Google results do not show up at times for all instances I've tried. Is anyone else having the same problem? My main instance is searx.dk
duplicateFirst, it is possible to move searx/searx to searx/searx-old (or searx/searx-archives) and move asciimoo/searx to searx/searx
It will be better, I do not understand the fork ;)
metaI don't know if this is the appropriate place to ask since this is an issue specific to a single instance of searx, but since yesterday I can't seem to obtain results from Google using searx.me . If I disable all engines but Google I get no results at all. I tried other public instances, including search.homecomputing.fr and searx.info and they don't seem to have this problem. Does anyone else have similar issues?
At first, I'd like to say a huge thank you to the searx community and especially to the maintainers for taking care about searx in the past two years while I was mostly inactive. In the past years I worked on other OSS projects like GoColly (https://github.com/gocolly) and ParlTrack (https://github.com/parltrack , https://parltrack.org/) which has been fully rewritten nearly from scratch.
Focusing on the future, I'd like to announce that in the next 5-6 months I'm working full time on searx to be able to release its first stable release. Big thanks to NLNet (https://nlnet.nl) which makes it possible. The plan is the following: As the first milestone (starting from Monday) I'd like to fix all engines and prioritize our current issues mainly focusing on bug/core/security/ui labeled issues. In this part I'd like to ask for your help to collect the most important issues and assign priorities to them. Please list every issue you'd like to be the part of the v1.0.0 release or if an issue is already in the comment thread vote for it with a :+1: . After the issues are collected I'm creating a dedicated searx project (https://github.com/asciimoo/searx/projects) where the whole development can be followed. As the second milestone I'm addressing the UI related tasks, and the backend related tasks will form the third milestone. The last (4.) milestone will consist of a full release test and the standard release process. If you have any questions, ideas or suggestions, feel free to comment.
Thanks, happy searxing.
enhancement question core metaBASE (Bielefield Academic Search Engine) is a proxy to search in 4000 open access science publications databases (including ArXiV, BiomedCentral). It harvests available databases through the "Open Archives Initiative Protocol for Metadata Harvesting" (OAI-PMH) and stores its own index.
Search webpage: https://base-search.net/
About: https://www.base-search.net/about/en/help.php
API: http://api.base-search.net/
(OAI: http://oai.base-search.net/ )
In PDF http://www.base-search.net/about/download/base_interface.pdf
List of other OAI-PMH harvesters: https://www.openarchives.org/service/listproviders.html
People searching scientific literature would benefit from having both engines "general" and "science" on the same search webpage.
I will suggest this idea to the people behind BASE.
engine request
If you're a user of Searx, you've most likely seen the above error message numerous times.
However, this has raised my curiosity: if this appears, prompting a search again will bring results. I'm not sure how exactly Searx's results crawling algorithm works, but perhaps it would be viable to implement some sort of retry system?
Thanks, Resynth
bugIf I call searx, the page was loaded, but the search page not loaded.

If I call it nativ, as shown in the install manual, python searx/webapp.py links2 http://localhost:8888 it works.
Configuration is manual like, with uwsgi and apache.
Apache log: "GET /static/css/bootstrap.min.css HTTP/1.0" 304 185 "GET /static/js/jquery-1.11.1.min.js HTTP/1.0" 304 183 "GET /static/themes/oscar/css/leaflet.min.css HTTP/1.0" 304 183 "GET /static/themes/oscar/css/logicodev.min.css HTTP/1.0" 304 183 "GET /static/js/bootstrap.min.js HTTP/1.0" 304 184 "GET /static/js/require-2.1.15.min.js HTTP/1.0" 304 183 "GET /static/themes/oscar/js/searx.min.js HTTP/1.0" 304 183 "GET /static/plugins/js/search_on_category_select.js HTTP/1.0" 304 182 "GET /static/themes/oscar/img/favicon.png HTTP/1.0" 200 2326 "GET /opensearch.xml HTTP/1.0" 200 366 "GET / HTTP/1.0" 404 4218
question installationThe google engine needs a revise .. the "REST-API" of google has changed (further read: #1981) and we have a lot of long unused code and old xpath expressions.
Further affects: #1496
FYI: also merged into the searx-next branch
bug enhancement engineWe have some variables in the build environment which are also needed in several other process environments:
Additional a ISSUE_URL is implemented 33814719
Hi there, I noticed that when enabling Yandex I get russian results mixed in, despite having set English as the language:

And Bing news always returns results only in German:

Version of Searx, commit number if you are using on master branch and stipulate if you forked Searx
Running off master at commit 117dbd462f39fb4c
How did you install Searx?
Installed and run manually from source (not docker)
What happened?
After starting searx, the first search says in the UI that duckduckgo was blocked. The debug: True logging shows:
DEBUG:urllib3.connectionpool:https://lite.duckduckgo.com:443 "POST /lite HTTP/1.1" 403 None
DEBUG:urllib3.connectionpool:https://www.bing.com:443 "GET /search?q=language%3AEN+hello+world&first=1 HTTP/1.1" 200 None
DEBUG:urllib3.connectionpool:https://search.yahoo.com:443 "GET /search?p=hello+world&ei=UTF-8&fl=1&vl=lang_en&btf=&fr2=time&age=&b=1&xargs=0 HTTP/1.1" 200 None
DEBUG:searx:duckduckgo: ErrorContext('/home/searx/searx/searx/search/processors/online.py', 96, "response = req(params['url'], **request_args)", 'searx.exceptions.SearxEngineAccessDeniedException', None, ('HTTP error 403',))
ERROR:searx.search.processor.online:engine duckduckgo : Searx is blocked
Traceback (most recent call last):
File "/home/searx/searx/searx/search/processors/online.py", line 144, in search
search_results = self._search_basic(query, params)
File "/home/searx/searx/searx/search/processors/online.py", line 124, in _search_basic
response = self._send_http_request(params)
File "/home/searx/searx/searx/search/processors/online.py", line 96, in _send_http_request
response = req(params['url'], **request_args)
File "/home/searx/searx/searx/poolrequests.py", line 223, in post
return request('post', url, data=data, **kwargs)
File "/home/searx/searx/searx/poolrequests.py", line 202, in request
raise_for_httperror(response)
File "/home/searx/searx/searx/raise_for_httperror.py", line 62, in raise_for_httperror
raise SearxEngineAccessDeniedException(message='HTTP error ' + str(resp.status_code),
searx.exceptions.SearxEngineAccessDeniedException: HTTP error 403, suspended_time=86400
as per https://github.com/searx/searx/blob/117dbd462f39fb4cc2f12e9f7b9acf8d3fff419b/searx/search/processors/online.py#L195-L198
The block message no longer appears in the UI after the first search. I'm assuming searx recognizes the block and enacts a one-day (86400-second) cooldown.
How To Reproduce
Of course, this is specific to my instance, which I am not willing to share. Nevertheless, I hope to be able to resolve it with some dialogue.
Expected behavior
DDG is not blocked
Screenshots & Logs
See above.
Additional context
Is there anything I can do to lift the block? Should I disable the DDG engine for a few days?
bugBumps certifi from 2022.9.24 to 2022.12.7.
9e9e840 2022.12.07Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR@dependabot recreate will recreate this PR, overwriting any edits that have been made to it@dependabot merge will merge this PR after your CI passes on it@dependabot squash and merge will squash and merge this PR after your CI passes on it@dependabot cancel merge will cancel a previously requested merge and block automerging@dependabot reopen will reopen this PR if it is closed@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)Bumps mock from 4.0.3 to 5.0.0.
Sourced from mock's changelog.
5.0.0
gh-98624: Add a mutex to unittest.mock.NonCallableMock to protect concurrent access to mock attributes.
bpo-43478: Mocks can no longer be used as the specs for other Mocks. As a result, an already-mocked object cannot have an attribute mocked using
autospec=Trueor be the subject of acreate_autospec(...)call. This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass.bpo-45156: Fixes infinite loop on :func:
unittest.mock.sealof mocks created by :func:~unittest.create_autospec.bpo-41403: Make :meth:
mock.patchraise a :exc:TypeErrorwith a relevant error message on invalid arg. Previously it allowed a cryptic :exc:AttributeErrorto escape.gh-91803: Fix an error when using a method of objects mocked with :func:
unittest.mock.create_autospecafter it was sealed with :func:unittest.mock.sealfunction.bpo-41877: AttributeError for suspected misspellings of assertions on mocks are now pointing out that the cause are misspelled assertions and also what to do if the misspelling is actually an intended attribute name. The unittest.mock document is also updated to reflect the current set of recognised misspellings.
bpo-43478: Mocks can no longer be provided as the specs for other Mocks. As a result, an already-mocked object cannot be passed to
mock.Mock(). This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass.bpo-45010: Remove support of special method
__div__in :mod:unittest.mock. It is not used in Python 3.gh-84753: :func:
inspect.iscoroutinefunctionnow properly returnsTruewhen an instance of :class:unittest.mock.AsyncMockis passed to it. This makes it consistent with behavior of :func:asyncio.iscoroutinefunction. Patch by Mehdi ABAAKOUK.bpo-46852: Remove the undocumented private
float.__set_format__()method, previously known asfloat.__setformat__()in Python 3.7. Its docstring said: "You probably don't want to use this function. It exists mainly to be used in Python's test suite." Patch by Victor Stinner.gh-98086: Make sure
patch.dict()can be applied on async functions.
... (truncated)
6d40148 sudo no longer needed172a36c Add support for gh issues to release.py.c4dd650 Preparing for 5.0.0 release.3a70a8c Update historical issue references to be bpo- prefixed85a196e Fixup reverting backported rev example.726e5ee latest sync point5462a55 Fix mock code coverage. (#100580)78fed8a gh-100287: Fix unittest.mock.seal with AsyncMock (#100496)36e4a68 gh-83076: 3.8x speed improvement in (Async)Mock instantiation (#100252)a2cb0be gh-98086: Now patch.dict can decorate async functions (#98095)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR@dependabot recreate will recreate this PR, overwriting any edits that have been made to it@dependabot merge will merge this PR after your CI passes on it@dependabot squash and merge will squash and merge this PR after your CI passes on it@dependabot cancel merge will cancel a previously requested merge and block automerging@dependabot reopen will reopen this PR if it is closed@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)Bumps lxml from 4.9.1 to 4.9.2.
Sourced from lxml's changelog.
4.9.2 (2022-12-13)
Bugs fixed
- CVE-2022-2309: A Bug in libxml2 2.9.1[0-4] could let namespace declarations from a failed parser run leak into later parser runs. This bug was worked around in lxml and resolved in libxml2 2.10.0. https://gitlab.gnome.org/GNOME/libxml2/-/issues/378
Other changes
LP#1981760:
Element.attribnow registers ascollections.abc.MutableMapping.lxml now has a static build setup for macOS on ARM64 machines (not used for building wheels). Patch by Quentin Leffray.
c17c1ca Use same naming for Python version matrix variable in wheel workflow as in CI...fc2f7ea Use windows-2016 image instead of windows-2019 to fix the Py2.7 build.98224b3 Install more recent library versions for the wheel build.ce4e5bc Fix release date.cece238 Add PyPy-3.8 CI target.2c2308e Try to add a Windows CI build for Py2.7.0b0b2b9 Exclude missing Python versions from CI jobs.b848b82 Try to fix CI "setup.py install" in Py3.11.487a194 CI: exclude non-static Windows jobs.fc53d6f Show executed commands in CI runs.Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR@dependabot recreate will recreate this PR, overwriting any edits that have been made to it@dependabot merge will merge this PR after your CI passes on it@dependabot squash and merge will squash and merge this PR after your CI passes on it@dependabot cancel merge will cancel a previously requested merge and block automerging@dependabot reopen will reopen this PR if it is closed@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)Bumps sphinx from 5.3.0 to 6.0.0.
Sourced from sphinx's releases.
v6.0.0
Changelog: https://www.sphinx-doc.org/en/master/changes.html
v6.0.0b2
Changelog: https://www.sphinx-doc.org/en/master/changes.html
v6.0.0b1
Changelog: https://www.sphinx-doc.org/en/master/changes.html
Sourced from sphinx's changelog.
Release 6.0.0 (released Dec 29, 2022)
Dependencies
- #10468: Drop Python 3.6 support
- #10470: Drop Python 3.7, Docutils 0.14, Docutils 0.15, Docutils 0.16, and Docutils 0.17 support. Patch by Adam Turner
Incompatible changes
#7405: Removed the jQuery and underscore.js JavaScript frameworks.
These frameworks are no longer be automatically injected into themes from Sphinx 6.0. If you develop a theme or extension that uses the
jQuery,$, or$uglobal objects, you need to update your JavaScript to modern standards, or use the mitigation below.The first option is to use the sphinxcontrib.jquery_ extension, which has been developed by the Sphinx team and contributors. To use this, add
sphinxcontrib.jqueryto theextensionslist inconf.py, or callapp.setup_extension("sphinxcontrib.jquery")if you develop a Sphinx theme or extension.The second option is to manually ensure that the frameworks are present. To re-add jQuery and underscore.js, you will need to copy
jquery.jsandunderscore.jsfromthe Sphinx repository_ to yourstaticdirectory, and add the following to yourlayout.html:.. code-block:: html+jinja
{%- block scripts %} {{ super() }} {%- endblock %}
.. _sphinxcontrib.jquery: https://github.com/sphinx-contrib/jquery/
Patch by Adam Turner.
#10471, #10565: Removed deprecated APIs scheduled for removal in Sphinx 6.0. See :ref:
dev-deprecated-apisfor details. Patch by Adam Turner.#10901: C Domain: Remove support for parsing pre-v3 style type directives and roles. Also remove associated configuration variables
c_allow_pre_v3andc_warn_on_allowed_pre_v3. Patch by Adam Turner.Features added
... (truncated)
5b56a23 Bump to 6.0.0 finalf1d1e9c Update coverage workflow for Tox 466a738c Update coverage workflow for new configuration location041e5f8 Add test coverage for 'today_fmt' reference substitution (#10980)da25145 Remove unnecessary conditional import in sphinx.ext.napoleon (#11043)45a0ea9 Migrate coveragepy config into pyproject.toml (#11025)3ec54f1 Create a pydata_sphinx_theme section in usage examples (#11046)32bce8f Copy edit the tutorial (#11049)9844162 Fix example using add_config_value (#10937)bf4a626 RTD builder: add graphviz depedendency (#11040)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR@dependabot recreate will recreate this PR, overwriting any edits that have been made to it@dependabot merge will merge this PR after your CI passes on it@dependabot squash and merge will squash and merge this PR after your CI passes on it@dependabot cancel merge will cancel a previously requested merge and block automerging@dependabot reopen will reopen this PR if it is closed@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)It has been a while since we released a new version of searx. Thus, we have lots of new things to offer, like new engines, autocompleter, plugins, etc. We got numerous contributions from ~30 new developers, but also we got many PRs from our recurring contributors.
Thank you so much for you support! We couldn't have release so many awesome things without you!
hostname_replace plugin to rewrite result hostnames by @3nprob in https://github.com/searx/searx/pull/2724search_operators plugin to filter search results using -, site: and -site: by @DiamondDemon669 @kvch in https://github.com/searx/searx/pull/3311SEARX_SETTINGS_PATH, UWSGI_SETTINGS_PATH by @3nprob in https://github.com/searx/searx/pull/2717Full Changelog: https://github.com/searx/searx/compare/v1.0.0...v1.1.0
Source code(tar.gz)Core:
Documentation:
New settings.yml:
general.contact_url : add link to contact instance maintainer to footer of each page ( #2391 14c7cc0e118f1d0873b32b34793cdec2c5c9c13e #2412 )brand : move brand options from Makefile to settings.yml ( #2408 #2473 )Themes:
New engines:
Fixed engines:
Updated engines:
Removed engines:
Bug fixes
Code refactoring / reduce the technical debt:
Github:
Build scripts:
books/{name}.* and books/user.pdf ( #2420 #2530 )gh-pages : flatten history of branch gh.pages ( #2514 )Install scripts:
We, the searx maintainer team, would like to say a huge thank you for everybody who had been involved in the development of searx or supported us in the past 7 years - making our first stable release available. Special thanks to NLNet for sponsoring multiple features of this release.
Source code(tar.gz)Core:
/stats/errors.New settings.yml:
use_default_settings: user settings can relied on the default settings ( #2291 #2362 #2349 )ui.results_on_new_tab: False - for opening result links in a new tab ( #2167 )ui.advanced_search - add preference for displaying advanced settings ( #2327 )server.method: "POST" - Make default query submission method configurable ( #2130 )server.default_http_headers - add default http headers ( #2295 )engines.*.proxies - Using proxy only for specific engines ( #1827 #2319 ), see https://searx.github.io/searx/dev/engine_overview.html#settings-ymlenabled_plugins - Enabled plugins ( a05c660e3036ad8d02072fc6731af54c2ed6151c )preferences.lock - Let admins lock user preferences ( #2270 )Oscar theme:
Simple theme:
New engines:
Updated engines:
Fixed engines:
Removed engines:
Install scripts:
Docker image
Bug fixes:
Special thanks to NLNet for sponsoring multiple features of this release.
Source code(tar.gz)display_error_messages engine option (true/false values, default is true)Special thanks to NLNet for sponsoring multiple features of this release. Special thanks to https://www.accessibility.nl/english for making accessibilty audit.
Source code(tar.gz)Special thanks to NLNet for funding the developement of this release.
Source code(tar.gz)New engines
New languages
New random answerers
New DOI resolsvers
Fix Vim mode on Firefox
Fix custom select in Oscar theme
Engine fixes (duckduckgo, google news, currency convert, gigablast, google scholar, wikidata image, etymonline, google videos, startpage, bing image)
Minor simple theme fixes
New Youtube icon in Oscar theme
Get DOI rewriters from settings.yml
Hide page buttons when infinite scrolling is enabled
Update user agent versions
Make Oscar style configurable
Make suspend times of errored engines configurable
Special thanks to NLNet for sponsoring multiple features of this release.
Source code(tar.gz)@kvch joined the maintainer team
Source code(tar.gz)New documentation page is available: https://asciimoo.github.io/searx
Source code(tar.gz)@dalf joined the maintainer "team"
Source code(tar.gz)This project is for finding a solution to use Security Onion Elastic data with Jupyter Notebooks. The goal is to successfully use this notebook project below with Security Onion for beacon detection
ROFL-FUZZER Ths is Domato, a DOM Fuzzer from Google, but hosted as an website It generates a instance of a newtab on the template given by the user ,
Tool-X is a kali linux hacking Tool installer. Tool-X developed for termux and other Linux based systems. using Tool-X you can install almost 370+ hacking tools in termux app and other linux based di
Dark-Fb No Login 100% safe TERMUX • pkg install python2 && git -y • pip2 install requests mechanize tqdm • git clone https://github.com/BOT-033/Sensei
print " INSTALL TOOLS " $ pkg update && upgrade $ pkg install python2 $ pkg install git $ pip2 install lolcat $ pip2 install bs4 $ pip2 install reques
This is a collection of Python scripts to make working with the Arch Linux Security Tracker easier.
CVE-2021-22005-metasploit the metasploit script(POC/EXP) about CVE-2021-22005 VMware vCenter Server contains an arbitrary file upload vulnerability pr
CVE-2021-33044 Dahua IPC/VTH/VTO devices auth bypass exploit About: The identity authentication bypass vulnerability found in some Dahua products duri
前言 一直苦于没有用的顺手的web指纹识别工具,学习前辈s7ckTeam的Glass和broken5的WebAliveScan优秀开源程序开发的轻量型web指纹工具。
EVM Bytecode Disassembler The disassembler parses evm bytecode from the command line or from a file. It does not matter whether the bytecode is prefix
GreedyBear The project goal is to extract data of the attacks detected by a TPOT or a cluster of them and to generate some feeds that can be used to p
dora Features Blazing fast as we are using ripgrep in backend Exploit/PoC steps for many of the API key, allowing to write a good report for bug bount
RTTI parser Parses RTTI information from executable. Example HexRays decompiler view Before: After: Functions window Before: After: Structs window Ins
Overview NS-Defacer is a auto html injecter, In other words It's a auto defacer
AF-ShellHunter AF-ShellHunter: Auto shell lookup AF-ShellHunter its a script designed to automate the search of WebShell's in AF Team How to pip3 ins
PyFUD fully Undetectable payload generator for metasploit Usage: pyfud.py --host
getlevels A small Python Script To get all levels of subdomains Easily get 1st level, 2nd level, 3rd level, 4th level .... nth level subdomains Usag
elite Script Crack Facebook Elite 🚶♂ Install Script $ pkg update && pkg upgrade $ termux-setup-storage $ pkg install git $ pkg install python $ pip
Usage python3 .\exchange-exp.py -------------------------------------------------------------------------------- |
CVE-2021-24086 This is a proof of concept for CVE-2021-24086 ("Windows TCP/IP Denial of Service Vulnerability "), a NULL dereference in tcpip.sys patc