gpx2kml


Namegpx2kml JSON
Version 0.1.0 PyPI version JSON
download
home_page
SummaryA library to combine gpx files exported from runkeeper.com to kml files
upload_time2023-11-12 23:22:02
maintainer
docs_urlNone
author
requires_python>=3.10
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # gpx2kml
gpx2kml is a library for combining [gpx](https://en.wikipedia.org/wiki/GPS_Exchange_Format) files exported from [Runkeeper](https://runkeeper.com/cms/) to [kml](https://developers.google.com/kml/documentation/kml_tut) files. Below is a screenshot of the generated kml file in Google Earth.
![A demo screenshot from Google Earth](/demo/google%20earth%20demo.png)

## Introduction
Runkeeper is one of many mobile apps that can track exercises. Usually they provide UI for displaying individual activity (like biking, running, etc.) with route map and statistics, and the functionality to bulk export archive files. 

gpx2kml can combine all the gpx files exported from Runkeeper into a single kml file so that it can be displayed in the Google Earth. The motivation is mainly to prepare data for my [bike journey webpage](https://bike-journey.netlify.app/).

## User scenario 
I use Runkeeper to track my biking and walking activities. Tracking is a long term activity, so file generation and archive is an incremental process. 

I export the gpx files once per month, and generate kml files from the gpx files with the format YYYY-MM.kml. After that, all the kml files are combined into a single kml file, usually named after the city or the event related with those activities.

## Installation
```commandline
pip install gpx2kml
```

## How to use it
1. Accumulate a few activities using Runkeeper.
2. [Export the acitives](https://support.runkeeper.com/hc/en-us/articles/201109886-How-to-Export-Your-Runkeeper-Data) from the Runkeeper web UI and download the file. The demo folder provides a sample zip file.
3. Open a terminal, and change the working directory to the one that contains the zip file.
4. Run `gpx-archive` in the terminal. This will create an *archive* folder under the working directory, with all the gpx files inside.
```commandline
gpx-archive
```
5. Run `kml-gen` in the terminal. This will create a *kml* folder under the working directory, with the generated kml files organized by month.
```commandline
kml-gen
```
6. Run `kml-combine XXX` in the terminal. This will create a `XXX.kml`` file that includes all the kml files in the kml folder.
```commandline
kml-combine XXX
```

 Other than running the commands in the terminal, there is a demo.py that demonstrates how to call the methods in a python file. 

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "gpx2kml",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "",
    "author": "",
    "author_email": "Kan Fu <fukan.thu@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/f7/c5/db35072bed62ef523f462a32e0e18f0adc2def18ccc543f034844629a0e3/gpx2kml-0.1.0.tar.gz",
    "platform": null,
    "description": "# gpx2kml\ngpx2kml is a library for combining [gpx](https://en.wikipedia.org/wiki/GPS_Exchange_Format) files exported from [Runkeeper](https://runkeeper.com/cms/) to [kml](https://developers.google.com/kml/documentation/kml_tut) files. Below is a screenshot of the generated kml file in Google Earth.\n![A demo screenshot from Google Earth](/demo/google%20earth%20demo.png)\n\n## Introduction\nRunkeeper is one of many mobile apps that can track exercises. Usually they provide UI for displaying individual activity (like biking, running, etc.) with route map and statistics, and the functionality to bulk export archive files. \n\ngpx2kml can combine all the gpx files exported from Runkeeper into a single kml file so that it can be displayed in the Google Earth. The motivation is mainly to prepare data for my [bike journey webpage](https://bike-journey.netlify.app/).\n\n## User scenario \nI use Runkeeper to track my biking and walking activities. Tracking is a long term activity, so file generation and archive is an incremental process. \n\nI export the gpx files once per month, and generate kml files from the gpx files with the format YYYY-MM.kml. After that, all the kml files are combined into a single kml file, usually named after the city or the event related with those activities.\n\n## Installation\n```commandline\npip install gpx2kml\n```\n\n## How to use it\n1. Accumulate a few activities using Runkeeper.\n2. [Export the acitives](https://support.runkeeper.com/hc/en-us/articles/201109886-How-to-Export-Your-Runkeeper-Data) from the Runkeeper web UI and download the file. The demo folder provides a sample zip file.\n3. Open a terminal, and change the working directory to the one that contains the zip file.\n4. Run `gpx-archive` in the terminal. This will create an *archive* folder under the working directory, with all the gpx files inside.\n```commandline\ngpx-archive\n```\n5. Run `kml-gen` in the terminal. This will create a *kml* folder under the working directory, with the generated kml files organized by month.\n```commandline\nkml-gen\n```\n6. Run `kml-combine XXX` in the terminal. This will create a `XXX.kml`` file that includes all the kml files in the kml folder.\n```commandline\nkml-combine XXX\n```\n\n Other than running the commands in the terminal, there is a demo.py that demonstrates how to call the methods in a python file. \n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A library to combine gpx files exported from runkeeper.com to kml files",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/kan-fu/gpx2kml/issues",
        "Homepage": "https://github.com/kan-fu/gpx2kml"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e38cae63605ad1912a7e40e2cbb54ada098486276d59150a4359f01c4c2f3f40",
                "md5": "819e337dd919beea7895bb64cf36d922",
                "sha256": "0e64f9a4fa3632286450f0a4db5c58514d6bc4f980d2e47de96dfc4fb8e8ace6"
            },
            "downloads": -1,
            "filename": "gpx2kml-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "819e337dd919beea7895bb64cf36d922",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 7320,
            "upload_time": "2023-11-12T23:22:00",
            "upload_time_iso_8601": "2023-11-12T23:22:00.847339Z",
            "url": "https://files.pythonhosted.org/packages/e3/8c/ae63605ad1912a7e40e2cbb54ada098486276d59150a4359f01c4c2f3f40/gpx2kml-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f7c5db35072bed62ef523f462a32e0e18f0adc2def18ccc543f034844629a0e3",
                "md5": "f09868e45819949ae30516c0e8e7c708",
                "sha256": "dba07cf116e5c4022ee7a807b239c04d0c6bda13fa102e6ea2263c085d7a40d4"
            },
            "downloads": -1,
            "filename": "gpx2kml-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f09868e45819949ae30516c0e8e7c708",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 7461,
            "upload_time": "2023-11-12T23:22:02",
            "upload_time_iso_8601": "2023-11-12T23:22:02.410112Z",
            "url": "https://files.pythonhosted.org/packages/f7/c5/db35072bed62ef523f462a32e0e18f0adc2def18ccc543f034844629a0e3/gpx2kml-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-12 23:22:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "kan-fu",
    "github_project": "gpx2kml",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "gpx2kml"
}
        
Elapsed time: 0.17928s