Metadata-Version: 2.1
Name: yatcxparser
Version: 0.0.1b0
Summary: Simple parser for advanced analytics of the Garmin TCX files
Home-page: https://github.com/alexey-ka/YATCX_parser
Author: Aleksei Karetnikov
Author-email: alexey.karetnikow@gmail.com
License: MIT
Description: # YATCX_parser
        Yet Another TCX Parser  
        yatsx_parser in a more advanced parser of the Garmin data files that was influenced by [python-tcxparser](https://github.com/vkurup/python-tcxparser/).  
        The main difference from the rest of the available parser is in the core idea of the project that is connected to the OpenLAPP framework (to be published) that requires interaction with a more low-lever data with more advanced data aggregations.  
        Current version extracts the following properties:  
        - ```features``` dictionary of the available features in the .tcx file  
        - ```has_powers``` flag that shows availability of the power measurements in the files  
        - ```powers``` list of the extracted power measurements  
        - ```grades``` list of the extracted slope grades in degrees  
        - ```distances``` list of the passed distance  
        - ```moves``` list of the moves during a single measurement  
        - ```low_altitude_distance``` passed distance on a low-altitude (by default, 1500m)  
        - ```high_altitude_distance``` passed distance on a high-altitudee (by default, 1500m)  
        - ```elevations``` list of the elevations  
        - ```total_elevation``` total elevation (or some of the positive climbs)  
        - ```heart_rate```  list of the heart rate measurements  
        - ```mean_heart_rate``` average heart rate during the session  
        - ```speeds```  list of the speeds  
        - ```altitudes``` list of the altitudes  
        - ```cadences``` list of the cadences
        - ```high_altitude_time``` total time on the high-altitude(by default, 1500m)  
        - ```total_distance``` total distance passed during the session  
        - ```calories``` total calories  
        - ```total_time``` total session time  
        - ```datetime``` session start time  
        - ```date``` session date
        - ```get_path(path, namespace)``` Read a value of a random value that could be found in the ```path``` inside of the ```namespace```  
        - ```read_xpath_property(xpath_obj, name)```Read a numeric property name in the given xpath_obj object  
          
        ## Import statement  
        ```from yatcxparser import TcxParser```  
        
        ## Default namespaces  
        Default namespaces from Garmin  
        | Namespace |-- URI --|  
        | ------------- |:-------------:|  
        | ns | http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2 |
        | ns2 | http://www.garmin.com/xmlschemas/UserProfile/v2 |  
        | ns3 | http://www.garmin.com/xmlschemas/ActivityExtension/v2 |  
        | ns4 | http://www.garmin.com/xmlschemas/ProfileExtension/v1 |  
        | ns5 | http://www.garmin.com/xmlschemas/ActivityGoals/v1 |   
        | xsi | http://www.w3.org/2001/XMLSchema-instance |  
          
        
        ## Init parameters  
        ```file_name``` **mandatory** parameter with a path to the .tcx file  
        ```pre_read``` flag that makes a pre-initiation of the data for a quicker access if the same properties are expected to be called many times. *Default: False*  
        ```params``` dictionary of parameters  
        ```recovery``` flag to perform data recovery with a linear interpolation. Alternatively set by the ```params```. *Default: True*  
        ### Default parameters  
        By default, the parameters are set as following:  
          
        ``` 
        default_params = {  
            'high_altitude': 1500,  
            'recovery': True  
        }
        ```
        That corresopnds to a default min altitude of 1500 meters and replace all the missing values with a linear interplation model.  
           
        ## Usage  
        ```
        from yatcxparser import TcxParser
        filename = '1.tcx'
        tcxparser = TcxParser(filename, pre_read=True)
        tcxparser.powers  
        # get list of the powers [0,0 ... , 0, 0]  
        ```
        
        # Compatibility  
        | 3.6 | 3.7 | 3.8 | 3.9 |  
        | + | + | + | + |  
        '+' confirmed compatibility  
        
        # License  
        MIT  
        # Authors  
        Primary author: Aleksei Karetnikov  
        
Keywords: tcx
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/markdown
