Skip to content

A Python library for interacting with trackerstatus.info API.

License

Notifications You must be signed in to change notification settings

mauvehed/trackerstatus

Repository files navigation

trackerstatus

PyPI Python Version License

CodeQL CI Release

A Python wrapper for the trackerstatus.info API and its tracker-specific endpoints. This library provides a simple interface to monitor the status of various trackers and their services.

  • Rate-limited API client (1 request per minute as per API requirements)
  • Support for all tracker-specific endpoints:
    • AlphaRatio (AR)
    • BroadcastTheNet (BTN)
    • GazelleGames (GGN)
    • PassThePopcorn (PTP)
    • Redacted (RED)
    • Orpheus (OPS)
    • Nebulance (NBL)
    • Anthelion (ANT)
  • Comprehensive status information including:
    • Current status
    • Latency metrics
    • Uptime statistics
    • Record uptimes
    • Downtime tracking
  • Type hints and detailed documentation
  • Extensive test coverage

Documentation

The project includes comprehensive documentation:

Features

  • Check tracker status and response times
  • Support for multiple tracker protocols (HTTP, HTTPS, UDP)
  • Detailed status information including:
    • Response time
    • Status code
    • Error messages
    • Protocol information
  • Easy-to-use API
  • Comprehensive documentation

Installation

pip install trackerstatus

Quick Start

from trackerstatus import APIClient, StatusEndpoint

# Create an API client
client = APIClient()

# Get overall status of all trackers
status_endpoint = StatusEndpoint(client)
all_statuses = status_endpoint.get_status()
print("Overall Status:")
for tracker, info in all_statuses.items():
    print(f"{tracker.upper()}: {info['status_message']}")
    if info['details']:
        details = info['details']
        print(f"  Description: {details.get('Description', 'N/A')}")
        print(f"  Services: {details.get('Services', {})}")
        print(f"  Last Update: {details.get('tweet', {}).get('date', 'N/A')}")

For more detailed examples, see the examples documentation.

Documentation

Development

This project uses Poetry for dependency management and development tools:

# Install dependencies
poetry install

# Run tests
poetry run pytest

# Format code
poetry run black .
poetry run isort .

# Type checking
poetry run mypy .

License

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