Skip to main content

A python utility to provide the high resolution Strava Heatmap to cartographic applications like JOSM and Cartograph Maps.

Project description

stravaheatmap

A collection of utilities for providing the high resolution Strava Heatmaps to cartographic applications. Currently, JOSM and Cartograph Maps are supported.

Permission to use the hi-res Strava Heatmap in JOSM has been granted by Strava, see https://wiki.openstreetmap.org/wiki/Strava and https://wiki.openstreetmap.org/wiki/Permissions/Strava

Requirements

stravaheatmap relies on Python 3, which comes pre-installed on most *x systems. For macOS, a convenient way to install Python 3 is homebrew; see, e.g., https://docs.python-guide.org/starting/install3/osx/. For Windows, see https://www.python.org/downloads/windows/.

A Strava account is required. Facebook/Google/Apple login to Strava is not supported. You can setup a Strava account heading to https://www.strava.com/register.

JOSM

Additional requirements

The utility for JOSM runs on macOS, linux, and Windows operating systems.

Usage

To install the Strava Heatmap in JOSM, perform the following steps:

  1. In JOSM preferences, activate the Strava imagery entries that you need. You can choose among all activities (all), ride (ride), run (run), and winter activities (winter).
  2. Change each default imagery URL string from e.g.:
tms[3,11]:https://heatmap-external-{switch:a,b,c}.strava.com/tiles/run/hot/{zoom}/{x}/{y}.png

to:

tms[3,15]:https://heatmap-external-{switch:a,b,c}.strava.com/tiles-auth/run/hot/{zoom}/{x}/{y}.png
  1. Close JOSM.
  2. From the command line, run python3 -m stravaheatmap.josm.
  3. Provide the email/password of your Strava account.
  4. Open JOSM. The imagery URL now should be something like:
tms[3,15]:https://heatmap-external-{switch:a,b,c}.strava.com/tiles-auth/run/hot/{zoom}/{x}/{y}.png?Key-Pair-Id=<YOUR_KEY_PAIR_ID_COOKIE_VALUE>&Policy=<YOUR_POLICY_COOKIE_VALUE>&Signature=<YOUR_SIGNATURE_COOKIE_VALUE>

When JOSM can no longer display the hi-res heatmap, it means authentication cookies have expired. You need to repeat the procedure from step 3.

Cartograph Maps

Usage

You can add online maps to Cartograph Maps through an online map definition file. An online map definition file is a JSON file that can be imported directly in Cartograph Maps.

The stravaheatmap.cartograph utility generates an online map definition (omapdef) file containing the TMS URLs of the Strava Heatmap of the four available activities (all, ride, run, and winter).

  1. From the command line, run python3 -m stravaheatmap.cartograph
  2. Provide the email/password of your Strava account
  3. Choose whether you want to save the omapdef file saved in the current directory or in iCloud (only relevant for macOS users--if you choose iCloud the file will be saved in <HOME>/Library/Mobile Documents/com~apple~CloudDocs/Cartograph Pro, for an easy import into Cartograph Maps from mobile devices).
  4. Import the map definition file into Cartograph Maps. The following maps will be available in the Manage Maps menu:
    • Strava Heatmap (all)
    • Strava Heatmap (ride)
    • Strava Heatmap (run)
    • Strava Heatmap (winter)

When Cartograph Maps can no longer display the hi-res heatmap, it means Strava authentication cookies have expired. From the Manage Maps menu, remove any previous Strava Heatmap previously installed in Cartograph Maps, and repeat the process from step 1.

Licence

stravaheatmap is distributed under the GPL v3.0 licence.

Project details


Release history Release notifications | RSS feed

This version

4.3

Download files

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

Source Distribution

stravaheatmap-4.3.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

stravaheatmap-4.3-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file stravaheatmap-4.3.tar.gz.

File metadata

  • Download URL: stravaheatmap-4.3.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.6

File hashes

Hashes for stravaheatmap-4.3.tar.gz
Algorithm Hash digest
SHA256 0245f119954748eb20f2dcc7f5e410edfc66427b360070993def360d817cdbf3
MD5 459b7dfff89ab034979178c9d4253310
BLAKE2b-256 fbc835653af46b38a027eb3b64f73ec3dc150801e6b708dd3a1c053b87ac7814

See more details on using hashes here.

File details

Details for the file stravaheatmap-4.3-py3-none-any.whl.

File metadata

  • Download URL: stravaheatmap-4.3-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.6

File hashes

Hashes for stravaheatmap-4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 721b98f839a560789d3c6b92b3455cd9dded7569a8e04f9a186e679d977901ac
MD5 b7ffd26a43bef55681c9193ed105314b
BLAKE2b-256 0810e9c57dd1d3e47bdd1c7cd52b5c2ca8a22f5d44a23f8e208fb408ce49ff65

See more details on using hashes here.

Supported by

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