Trace any account across the web in this scalable web port of the Sherlock project
Demo | Usage | Installation | Run | Code Quality | Deploying on Heroku
Use this link to test WebHound directly in your browser: https://branimirs-page.herokuapp.com/webhound/trace/
- Type in a username and press enter. The celery task will do the query for you async.
- The query page reloads every 10 seconds to update you when the results are done. This can be done manually too.
- If you close the query page, you can come back to it anytime or just type the same username in the search page.
# clone the repo
$ git clone git@github.com:beepy0/WebHound.git
# change to the project directory
$ cd WebHound
# install python3 and python3-pip if they are not installed
# install additional libraries
$ python -m pip install -r requirements.txt
# install RabbitMQ: https://www.rabbitmq.com/
- Start server:
python manage.py runserver
- Start celery task:
celery -A WebHoundApp worker -l info
- Navigate to
https://127.0.0.1:8000/webhound/trace/
- Test:
coverage run manage.py test WebHoundApp
thencoverage report
- Run tests separately:
python manage.py test
- Linter:
flake8 --statistics
The supplied Procfile is sufficient for deploying on Heroku.
In order to have persistent storate (Heroku will reset sqlite3 data as containers are ephemeral), you need to change to another storage solution, for example Heroku's PostgreSQL add-on.
You also need to change app
in celery.py
to use the Heroku add-on broker
Last thing you need to configure is change the root_url
in config.py
to reflect your website's root url (localhost by default and for dev purposes)