1
0
mirror of https://github.com/searx/searx synced 2024-12-11 08:25:27 +01:00
Motore di metasearch che rispetta la privacy, hackerabile / pronuncia səːks. https://devol.it/it/searx
Go to file
2016-01-03 19:57:37 -06:00
examples
searx add tests for unicode strings in wolframalpha 2016-01-03 19:57:37 -06:00
utils [enh] currency_convert engine: user can write "1 dollars in euros" instead of "1 USD in EUR". 2015-05-12 20:52:08 +02:00
.coveragerc Cover searx.utils 2014-07-12 15:46:55 +02:00
.gitignore [mod] transifex client dir added to gitignore 2015-05-19 18:59:38 +02:00
.landscape.yaml Add landscape.io configuration 2014-07-09 22:49:38 +02:00
.travis.yml [fix] yml 2015-09-01 20:03:32 +02:00
AUTHORS.rst [doc] @GreenLunar, @kvch, @gugod added to authors 2015-12-22 23:15:20 +01:00
babel.cfg
base.cfg fix: update buildout 2015-11-01 06:42:06 +01:00
bootstrap.py fix: update buildout 2015-11-01 06:42:06 +01:00
buildout.cfg
CHANGELOG.rst [enh] version 0.8.1 2015-12-22 23:21:12 +01:00
Dockerfile Update Dockerfile. 2015-06-10 12:39:19 +03:00
LICENSE [fix] full AGPLv3+ license according to #382 2015-07-04 18:23:54 +02:00
Makefile fix: update buildout 2015-11-01 06:42:06 +01:00
minimal.cfg
production.cfg
README.rst [fix] broken link in README from #314 2015-10-26 13:40:06 +01:00
requirements.txt [fix] SSL : SNI support 2015-04-26 12:04:29 +02:00
setup.py [fix] data directory added to setup.py package_data 2015-05-24 21:13:29 +02:00
tox.ini [enh] tox.ini added to rewrite standard pep8 rules 2015-01-02 12:26:21 +01:00
versions.cfg [fix] #471 #463 fix old openssl(<1.0.2) requests verify error 2015-12-29 19:42:16 +01:00

searx
=====

A privacy-respecting, hackable `metasearch
engine <https://en.wikipedia.org/wiki/Metasearch_engine>`__.

List of `running
instances <https://github.com/asciimoo/searx/wiki/Searx-instances>`__.

See the `wiki <https://github.com/asciimoo/searx/wiki>`__ for more information.

|Flattr searx|

Features
~~~~~~~~

- Tracking free
- Supports multiple output formats

  - json ``curl https://searx.me/?format=json&q=[query]``
  - csv ``curl https://searx.me/?format=csv&q=[query]``
  - opensearch/rss ``curl https://searx.me/?format=rss&q=[query]``
- Opensearch support (you can set as default search engine)
- Configurable search engines/categories
- Different search languages
- Duckduckgo like !bang functionality with engine shortcuts
- Parallel queries - relatively fast

Installation
~~~~~~~~~~~~

-  clone source:
   ``git clone git@github.com:asciimoo/searx.git && cd searx``
-  install dependencies: ``pip install -r requirements.txt``
-  edit your
   `settings.yml <https://github.com/asciimoo/searx/blob/master/settings.yml>`__
   (set your ``secret_key``!)
-  run ``python searx/webapp.py`` to start the application

For all the details, follow this `step by step
installation <https://github.com/asciimoo/searx/wiki/Installation>`__

Alternative (Recommended) Installation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

-  clone source:
   ``git clone git@github.com:asciimoo/searx.git && cd searx``
-  build in current folder: ``make minimal``
-  run ``bin/searx-run`` to start the application

Development
~~~~~~~~~~~

Just run ``make``. Versions of dependencies are pinned down inside
``versions.cfg`` to produce most stable build. Also remember, NO make
command should be run as root, not even ``make production``

Deployment
~~~~~~~~~~

-  clone source:
   ``git clone git@github.com:asciimoo/searx.git && cd searx``
-  build in current folder: ``make production``
-  run ``bin/supervisord`` to start the application

Upgrading
~~~~~~~~~

-  inside previously cloned searx directory run: ``git stash`` to
   temporarily save any changes you have made
-  pull source: ``git pull origin master``
-  re-build in current folder: ``make production``
-  run ``bin/supervisorctl stop searx`` to stop searx, if it does not,
   then run ``fuser -k 8888/tcp``
-  run ``bin/supervisorctl reload`` to re-read supervisor config and
   start searx

Command make
~~~~~~~~~~~~

``make``
''''''''

Builds development environment with testing support.

``make tests``
''''''''''''''

Runs tests. You can write tests
`here <https://github.com/asciimoo/searx/tree/master/searx/tests>`__ and
remember 'untested code is broken code'.

``make robot``
''''''''''''''

Runs robot (Selenium) tests, you must have ``firefox`` installed because
this functional tests actually run the browser and perform operations on
it. Also searx is executed with
`settings\_robot <https://github.com/asciimoo/searx/blob/master/searx/settings_robot.yml>`__.

``make flake8``
'''''''''''''''

'pep8 is a tool to check your Python code against some of the style
conventions in `PEP 8 <http://www.python.org/dev/peps/pep-0008/>`__.'

``make coverage``
'''''''''''''''''

Checks coverage of tests, after running this, execute this:
``firefox ./coverage/index.html``

``make production``
'''''''''''''''''''

Used to make co-called production environment - without tests (you
should ran tests before deploying searx on the server). This installs
supervisord, so if searx crashes, it will try to pick itself up again.
And crontab entry is added to start supervisord at server boot.

``make minimal``
''''''''''''''''

Minimal build - without test frameworks, the quickest build option.

``make clean``
''''''''''''''

Deletes several folders and files (see ``Makefile`` for more), so that
next time you run any other ``make`` command it will rebuild everithing.

TODO
~~~~

- Moar engines
- Better ui
- Browser integration
- Documentation
- Tests

Bugs
~~~~

Bugs or suggestions? Visit the `issue
tracker <https://github.com/asciimoo/searx/issues>`__.

`License <https://github.com/asciimoo/searx/blob/master/LICENSE>`__
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

More about searx
~~~~~~~~~~~~~~~~

-  `ohloh <https://www.ohloh.net/p/searx/>`__
-  `twitter <https://twitter.com/Searx_engine>`__
-  IRC: #searx @ freenode

.. |Flattr searx| image:: http://api.flattr.com/button/flattr-badge-large.png
   :target: https://flattr.com/submit/auto?user_id=asciimoo&url=https://github.com/asciimoo/searx&title=searx&language=&tags=github&category=software