Skip to main content

A privacy-respecting, hackable metasearch engine

Project description

A privacy-respecting, hackable metasearch engine.

List of running instances.

Flattr searx

Features

  • Tracking free

  • Modular (see examples)

  • Parallel queries

  • Supports multiple output formats
    • json curl https://searx.0x2a.tk/?format=json&q=[query]

    • csv curl https://searx.0x2a.tk/?format=csv&q=[query]

    • opensearch/rss curl https://searx.0x2a.tk/?format=rss&q=[query]

  • Opensearch support (you can set as default search engine)

  • Configurable search engines/categories

Installation

  • clone source: git clone git@github.com:asciimoo/searx.git && cd searx

  • install dependencies: pip install -r requirements.txt

  • edit your 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

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 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.

make flake8

‘pep8 is a tool to check your Python code against some of the style conventions in PEP 8.’

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

  • Language support

  • Documentation

  • Pagination

  • Fix flake8 errors, make flake8 will be merged into make tests when it does not fail anymore

  • Tests

  • When we have more tests, we can integrate Travis-CI

Bugs

Bugs or suggestions? Visit the issue tracker.

License

More about searx

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

searx-0.1.2.tar.gz (74.9 kB view details)

Uploaded Source

File details

Details for the file searx-0.1.2.tar.gz.

File metadata

  • Download URL: searx-0.1.2.tar.gz
  • Upload date:
  • Size: 74.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for searx-0.1.2.tar.gz
Algorithm Hash digest
SHA256 49be6422efbc7cc3e63bde04116ab1964d9103fa7025ced55838fb4621a10cd3
MD5 8fbdab1e8a05204cb99ade20d27a341a
BLAKE2b-256 557395643b8b1f6c362113255e3f585d1f7857cc633a047a597560cdcc5a1619

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page