A Python MediaWiki bot doing mighty things. See Commons:User:ErfgoedBot
By default, the bot connects to the monuments database using the credentials pywikibot_config.db_username
and pywikibot_config.db_password
. You can override them via the database_config.yml
file.
To hack on it, use tox to run the tests
To spin-up a development environement simulating harvesting:
# Build Docker images docker-compose build # Create database tables docker-compose run --rm --no-deps --entrypoint python bot -m erfgoedbot.monument_tables docker-compose run --rm --no-deps --entrypoint python bot -m erfgoedbot.fill_table_monuments_all # Start the Docker containers docker-compose up -d # Ensure a directory for locally written pages mkdir -p docker_pages # Run the bot to harvest a country docker-compose run --rm bot python -m erfgoedbot.update_database -countrycode:ge -langcode:ka -log # Update the monuments_all table docker-compose run --rm db mysql -h db s51138__heritage_p --user=heritage --password=password < erfgoedbot/sql/fill_table_monuments_all.sql # Update the statistics table docker-compose run --rm web php ../maintenance/_buildStats.php
The web interface will be accessible on http://localhost:5000/
This tool is meant to run on Toolforge.
Dependencies are installed in a Python virtual environment (via bin/build-python.sh
). In order to run Python scripts, you may want to use the Shell scripts in the bin
directory:
./bin/run_erfgoedbot_script.sh erfgoedbot/update_database.py -countrycode:ge -langcode:ka -log
A PHP API exploiting the MySQL database.
To hack on it, use Composer to run PHP tests and docker-compose to spin-up a local development environment.
./bin/download_monuments_database_dump.sh docker-compose -f docker-compose-dump.yml up -d
The web interface will be accessible on http://localhost:5000/
With the exception of directories containing their own LICENSE file, this repository is licensed under the MIT License.