Giter Site home page Giter Site logo

python-fitparse's Introduction

python-fitparse

Here's a Python library to parse ANT/Garmin .FIT files.

Welcome to python-fitparse! After a few years of laying dormant we are back to active development! The old version is archived as v1-archive.

The FIT (Flexible and Interoperable Data Transfer) file protocol is specified by ANT (http://www.thisisant.com/) and an SDK is available for download at http://www.thisisant.com/pages/products/fit-sdk.

Major Changes From Original Version

  • New, hopefully cleaner public API with a clear division between accessible and internal parts. (Still unstable and partially complete.)

  • Proper documentation! Available here.

  • Unit tests and example programs.

  • (WIP) Command line tools (eg a .FIT to .CSV converter).

  • Component fields and compressed timestamp headers now supported and not just an afterthought. Closes issues #6 and #7.

  • FIT file parsing is generic enough to support all types. Going to have specific FitFile subclasses for more popular file types like activities.

  • (WIP) Converting field types to normalized values (for example, bool, date_time, etc) done in a consistent way, that's easy to customize by subclassing the converter class. I'm going to use something like the Django form-style convert_<field name> idiom on this class.

  • The FIT profile is its own complete python module, rather than using profile.def.

    • Bonus! The profile generation script is less ugly (but still an atrocity) and supports every ANT FIT SDK from version 1.00 up to 5.10.
  • A working setup.py module. Closes issue #2, finally! I'll upload the package to PyPI when it's done.

  • Support for parsing one record at a time. This can be done using <FitFile>.parse_one() for now, but I'm not sure of the exact implementation yet.

License

This project is licensed under the MIT License - see the LICENSE file for details.

python-fitparse's People

Contributors

pr0ps avatar dtcooper avatar kropp avatar liamjm avatar nall avatar kampfschlaefer avatar vabada avatar mtraver avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.