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.15.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

PyForks-0.0.15-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: PyForks-0.0.15.tar.gz
  • Upload date:
  • Size: 19.0 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.15.tar.gz
Algorithm Hash digest
SHA256 08d06dfade8e9a492354d7bf129ca90c825fd1dc20dc99d7f977d84a59a5902d
MD5 140b2c39365d4f21328f9bab361721ba
BLAKE2b-256 7a1bf471b5d3fc653c3238e18694572d2cffab17914f9b30c894e7e174b4bf7b

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: PyForks-0.0.15-py3-none-any.whl
  • Upload date:
  • Size: 20.4 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.15-py3-none-any.whl
Algorithm Hash digest
SHA256 4a968c37003828cffedca5c406eb258bf5f52b330b5ccca87170fc0edf694f6b
MD5 3834d9762dd865debd03851e1ef0bdff
BLAKE2b-256 00560cf931c8ff5f05677871fdaffbdaf5cf420ec69f791d5dba65f0a8c4a150

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