WikiPicture
Scan your geotagged travel photos and discover which Wikipedia articles need images at those locations.
Features
- EXIF GPS extraction from JPEG and HEIC/HEIF photos
- Reverse geocoding via OpenStreetMap Nominatim
- Wikipedia analysis — finds articles missing images or tagged "needs photo"
- Wikimedia Commons saturation check — see how many photos already exist nearby
- Photo quality screening — resolution and blur detection
- Opportunity scoring — prioritizes your best upload candidates
- HTML report — sortable table with thumbnails, links, and color-coded priority
Installation
pip install -e .
Usage
# Scan a folder of photos and generate a report
wikipicture /path/to/photos --output report.html
# Limit to a specific number of photos
wikipicture /path/to/photos --output report.html --limit 50
# Skip quality filtering
wikipicture /path/to/photos --output report.html --skip-quality-check
How It Works
- Scans your photo folder for JPEG and HEIC/HEIF files with GPS data
- Clusters nearby photos to reduce API calls
- Reverse-geocodes each unique location via Nominatim
- Searches Wikipedia for articles about each location
- Checks if those articles need images (few/no photos, "needs photo" tags)
- Searches Wikimedia Commons to see how saturated each location is
- Scores each photo by upload opportunity and generates an HTML report
API Usage
This tool uses public, unauthenticated Wikimedia and OpenStreetMap APIs. Rate limits are respected automatically (1 request/second for Nominatim). Results are cached in a local SQLite database so re-runs are fast.
License
MIT
Release files for wikipicture 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wikipicture-0.2.0.tar.gz | 32.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wikipicture-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:57.8 kB
Release files / wikipicture-0.2.0.tar.gz
| Download URL | wikipicture-0.2.0.tar.gz |
|---|---|
| Size | 32.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6886bcf935f3734ae02746addcf4eb62219e6586fbd8cb38ca5a1b55d45e5be4
|
|
BLAKE2b-256 checksum How to use checksums |
6a5e3e7a4f7801b558c6bf66c13c1a583b367d752a4c9b6c0d49d621614bc6cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 4, 2026.
Transparency logRelease files / wikipicture-0.2.0-py3-none-any.whl
| Download URL | wikipicture-0.2.0-py3-none-any.whl |
|---|---|
| Size | 25.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d3d94f0d9e4fb6628878cd0e2dbdf792f623f6bee13f4adc6cdcc837a0a391f3
|
|
BLAKE2b-256 checksum How to use checksums |
90534daaf508fe24085afbf6a7be25caca6476b4a14bfb2436ce0f1cd92d470c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 4, 2026.
Transparency log