Download Komoot tracks and highlights as GPX files (including metadata). Supports bulk-download.
Project description
KomootGPX
Download Komoot tracks and highlights as GPX files with metadata
Python 3 or later is required.
Features
- Download recorded & planned trips as GPX files
- Bulk-download all trips stored in your profile (requires authentication)
- Includes metadata such as estimated duration, total elevation, difficulty and the original Komoot trip URL
- Can add trip highlights as POIs into the GPX file
- Includes user comments & image URLs for each highlight POI, as those often contain helpful information about the location
Installation
Download from PyPI:
pip install komootgpx
Testing
To run from local clone of repo (without installation):
uv run python -m komootgpx --help
Usage
Run script in interactive mode
uv run komootgpx
Enter your mail address (komoot.de)
>example@mail.com
Enter your password (input hidden)
Password:
Logging in...
Logged in as 'Example User'
3331210XX => Example trip A (hike; 20.766km; tour_recorded)
3331214XX => Example trip B (hike; 13.863km; tour_planned)
Enter a tour id to download
>3331210XX
Fetching tours of user '153434028XXX'...
Fetching tour '3331210XX'...
Fetching highlight '2635XX'...
Fetching highlight '15840XX'...
GPX file written to 'Example trip A-3331210XX.gpx'
Display advanced usage information
komootgpx --help
komootgpx.py [options]
[Authentication]
-m, --mail=mail_address Login using specified email address
-p, --pass=password Use provided password and skip interactive prompt
-n, --anonymous Skip authentication, no interactive prompt, valid only with -d
[Tours]
-l, --list-tours List all tours of the logged in user
-d, --make-gpx=tour_id Download tour as GPX
-a, --make-all Download all tours
-s, --skip-existing Do not download and save GPX if the file already exists, ignored with -d
-r, --remove-deleted Remove GPX files (from --output dir) without corresponding tour in Komoot (deleted and previous versions)
-I, --id-filename Use only tour id for filename (no title)
-D, --add-date Add tour date to file name
--max-title-length=num Crop title used in filename to given length (default: -1 = no limit)
[Filters]
-t, --tour-type=type Filter by track type ("planned", "recorded" or "all")
--start-date=YYYY-MM-DD Filter tours on or after specified date (optional)
--end-date=YYYY-MM-DD Filter tours on or before specified date (optional)
[Generator]
-o, --output Output directory (default: working directory)
-e, --no-poi Do not include highlights as POIs
--max-desc-length=count Limit description length in characters (default: -1 = no limit)
Authentication
It's required to be properly authenticated with username (email) and password to perform most of available operations:
- list user's tours (both planned and completed)
- download all tours
- download tour that has Visibility set to "Only me" or "Close friends"
Without authentication you can download any tour that is public (i.e. Visibility set to "Anyone"). To disable authentication use --anonymous
option.
In case given tour id is not available without authentication you'll receive following message: Error 403: {'status': 403, 'error': 'AccessDenied', 'message': 'Access denied without authentication.'}
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file komootgpx-1.4.1.tar.gz
.
File metadata
- Download URL: komootgpx-1.4.1.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c578e091a7c2e99de9cfa44a12564dc03df170a07e5c770d1a22c0912d02dc5a |
|
MD5 | 6d9b3ab05ec3d2b20554988d455bcedd |
|
BLAKE2b-256 | 570a22da0bdd0a32033c4c101be368ef6d1eff00156f0d446a54ddd8b86c80c9 |
File details
Details for the file komootgpx-1.4.1-py3-none-any.whl
.
File metadata
- Download URL: komootgpx-1.4.1-py3-none-any.whl
- Upload date:
- Size: 23.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5432e36b9c6eb16d7ba769a2d5f0e84503bd03ee9b00d42e04f3ac60329cca9c |
|
MD5 | bf319b49847bf4e2b832cde5126acd64 |
|
BLAKE2b-256 | c1f1fa15a9a2fb11ab382d9517baff631bb521a92e651c8f63687edb49dfca42 |