Skip to main content

Beacon TV Downloader - Direct HTTP downloads, no yt-dlp required

Project description

Beacon DL

Download BeaconTV videos with all subtitle tracks. Outputs properly formatted files for media libraries.

Python 3.10+ License: MIT

Installation

Quick Run (No Install)

Run directly without installing using uv:

# From PyPI
uvx beacon-dl --help

# From GitHub (latest)
uvx --from git+https://github.com/Postmodum37/beacon-dl.git beacon-dl --help

Permanent Install

# Install as a tool with uv
uv tool install beacon-dl

# Or with pip
pip install beacon-dl

# Or from GitHub
pip install git+https://github.com/Postmodum37/beacon-dl.git

Development Install

git clone https://github.com/Postmodum37/beacon-dl.git
cd beacon-dl
uv pip install -e .

Requirements:

  • Python 3.10+
  • ffmpeg (brew install ffmpeg on macOS, apt install ffmpeg on Linux)
  • Chromium browser (auto-installed on first run)

Quick Start

# Download latest episode (requires auth)
beacon-dl --username user@example.com --password yourpassword

# Or with uvx
uvx beacon-dl -u user@example.com -p yourpassword

# Download specific episode
beacon-dl https://beacon.tv/content/c4-e007-episode-title -u user@example.com -p pass

Commands

Command Description
beacon-dl [URL] Download latest episode or specific URL
beacon-dl list-series Show all available series
beacon-dl list-episodes <series> List episodes in a series
beacon-dl search <query> Search episodes by title or description
beacon-dl batch-download <series> Download multiple episodes
beacon-dl info <episode> Show episode details (resolutions, subtitles)
beacon-dl check-new Check for new episodes
beacon-dl history Show download history
beacon-dl config Show current configuration
beacon-dl verify Verify downloaded files
beacon-dl rename Rename files to current schema
beacon-dl clear-history Clear download history database

Examples

# Browse content
beacon-dl list-series
beacon-dl list-episodes campaign-4
beacon-dl search "dragon" --series campaign-4
beacon-dl info c4-e007-episode-title

# Download
beacon-dl --series exu-calamity              # Latest from specific series
beacon-dl batch-download campaign-4 --start 1 --end 5   # Episodes 1-5

# Maintenance
beacon-dl config                             # Show current settings
beacon-dl history --limit 50
beacon-dl verify --full                      # SHA256 verification
beacon-dl rename --execute                   # Apply naming updates
beacon-dl clear-history --force              # Clear history database

Authentication

# Command line
beacon-dl -u user@example.com -p yourpassword

# Environment variables
export BEACON_USERNAME=user@example.com
export BEACON_PASSWORD=yourpassword
beacon-dl

Configuration

Variable Default Description
BEACON_USERNAME - Account email
BEACON_PASSWORD - Account password
PREFERRED_RESOLUTION 1080p Quality (720p, 1080p, 2160p)
CONTAINER_FORMAT mkv Output format (mkv, mp4)

Output Format

Critical.Role.S04E07.Episode.Title.1080p.WEB-DL.AAC2.0.H.264.mkv

Docker

docker build -t beacon-dl .
docker run --rm -e BEACON_USERNAME=... -e BEACON_PASSWORD=... -v $(pwd):/app beacon-dl

Development

# Install dev dependencies
uv sync --extra dev

# Run tests
uv run pytest                    # All 427 tests
uv run pytest -m unit            # Unit tests only
uv run pytest -m security        # Security tests
uv run pytest --cov              # With coverage (~74%)

# Lint
uv run ruff check src/ tests/
uv run ruff format src/ tests/

Troubleshooting

Issue Solution
Subtitles fail Unblock assets-jpcust.jwpsrv.com in DNS blocker
Auth errors Check credentials, use --debug flag
Chromium install fails Run playwright install chromium manually

License

MIT

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

beacon_dl-0.4.2.tar.gz (114.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

beacon_dl-0.4.2-py3-none-any.whl (44.5 kB view details)

Uploaded Python 3

File details

Details for the file beacon_dl-0.4.2.tar.gz.

File metadata

  • Download URL: beacon_dl-0.4.2.tar.gz
  • Upload date:
  • Size: 114.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for beacon_dl-0.4.2.tar.gz
Algorithm Hash digest
SHA256 3d6f986b76d691598ee5aa11e067f4304fcf1cdcd25c8be42fe60de55a4dc19a
MD5 4cefce3dc3df33268036c61e9352e5e5
BLAKE2b-256 c5d4593c501ca3e855ab195b315d3ae9309c96bba65ed7c4f3b5ffe29c7a51ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for beacon_dl-0.4.2.tar.gz:

Publisher: release.yml on Postmodum37/beacon-dl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file beacon_dl-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: beacon_dl-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 44.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for beacon_dl-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bc35e4fcb97387f69cd035e4f9eb9cf029b87fb4ff3f702b1806267ed2905e0b
MD5 ab93c74667486f4d419be3ec6a855e4f
BLAKE2b-256 39824f4178fdba9f5f53b6072d2a91d0556f940e3b72d63722b6d910952a1162

See more details on using hashes here.

Provenance

The following attestation bundles were made for beacon_dl-0.4.2-py3-none-any.whl:

Publisher: release.yml on Postmodum37/beacon-dl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page