Skip to main content

A package to interface with Trailforks.com

Project description

PyForks

PyForks Tests GitHub PyPI codecov

Python Trailforks Library (Unofficial) for interacting with Trailforks.com. Help support this project and more.

About

PyForks has been designed to help me automate much of the manual data aggregation I was doing in order to build metrics for my local city and state trail systems. For example: wlmt.mn-mtb.com. The end goal of this project is the ability to make it much easier to pull data down that people are interested in and analyze it in a way that non-technical individuals can digest and understand impact in hopes of additional funding and interest.

Installation & Documentation

Quick Start

Currently, PyForks can interact with Users and Regions to obtain data that either requires Authentication or No Authentication. Functions that require Auth contain tha @authorization decorator which, can be seen in the Documentation.

Get Information on a User

from PyForks.user import User
from pprint import pprint

# Get Basic information about a user
tf_u = User()
user_info = tf_u.get_user_info("mnmtb")
pprint(user_info)

# Get the User's Gear
tf_u.username = "<your_username>"
tf_u.password = "<your_password>"
tf_u.login()
user_gear = tf_u.get_user_gear("mnmtb")
pprint(user_gear)

"""
EXAMPLE OUTPUT:
{
  'admin_region': 
    {
    'region_link': 'https://www.trailforks.com/region/minnesota/',
    'region_name': 'Minnesota'
    },
 'city': 'Lakeville',
 'country': 'USA',
 'is_regional_admin': True,
 'profile_link': 'https://www.trailforks.com/profile/mnmtb',
 'recent_ride_locations': ['West Lake Marion Park',
                           'Murphy-Hanrehan Park',
                           'Lebanon Hills',
                           'Spirit Mountain Bike Park',
                           'Battle Creek',
                           'Cottage Grove Bike Park',
                           'Lakeville'],
 'state': 'Minnesota',
 'username': 'mnmtb'}
 """

Get Information on a region

from PyForks.region import Region
tf_r = Region(username=<username>, password=<password>)
tf_r.login()

# Download All of a regions trails in CSV:
tf_r.download_all_region_trails(region, region_id)

# Download all region ridelogs in csv
tf_r.download_all_region_ridelogs(region)

# Download all region ridecounts in CSV
tf_r.download_region_ridecounts(region)

Contribute

Send all the pull requests you want!

Project details


Download files

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

Source Distribution

PyForks-0.0.16.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

PyForks-0.0.16-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

Details for the file PyForks-0.0.16.tar.gz.

File metadata

  • Download URL: PyForks-0.0.16.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.9

File hashes

Hashes for PyForks-0.0.16.tar.gz
Algorithm Hash digest
SHA256 9d2f9d02d6095876556e0e6dc7dce7168fe8e62207f040267fff430347d5d5d2
MD5 21b651d75ac6036a594b344b29737ea4
BLAKE2b-256 2713a6f85a99451d47820ac1fdd67f3d46e4e2d29d0eb769653c251762b80de2

See more details on using hashes here.

Provenance

File details

Details for the file PyForks-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: PyForks-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.9

File hashes

Hashes for PyForks-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 c54ac136cbec66bf974bb75b22fe70ecb582ecb7225c7aab4333e519f1888649
MD5 2ebf2306e9c24115f71b7dfb5d74c828
BLAKE2b-256 ba3536e1d67214295e82af320cd6af27711d1f6593e1d1dbfe753c7dfac69111

See more details on using hashes here.

Provenance

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