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.
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 ffmpegon macOS,apt install ffmpegon 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file beacon_dl-0.4.0.tar.gz.
File metadata
- Download URL: beacon_dl-0.4.0.tar.gz
- Upload date:
- Size: 114.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c738aa189da7147c131ef6870aa38790e37b22215b3e8ddc50abbfbb902fff6c
|
|
| MD5 |
d7d4edae2360f7dfff3a124e5ede37bb
|
|
| BLAKE2b-256 |
592eb60c0550db231cfbfb0b9e2a0c18e2ab416b6b1cfbc8be9cb99ff742eba4
|
Provenance
The following attestation bundles were made for beacon_dl-0.4.0.tar.gz:
Publisher:
release.yml on Postmodum37/beacon-dl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
beacon_dl-0.4.0.tar.gz -
Subject digest:
c738aa189da7147c131ef6870aa38790e37b22215b3e8ddc50abbfbb902fff6c - Sigstore transparency entry: 731744321
- Sigstore integration time:
-
Permalink:
Postmodum37/beacon-dl@00b46d76cafe601f3ecf231dda20697606f1669f -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/Postmodum37
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@00b46d76cafe601f3ecf231dda20697606f1669f -
Trigger Event:
release
-
Statement type:
File details
Details for the file beacon_dl-0.4.0-py3-none-any.whl.
File metadata
- Download URL: beacon_dl-0.4.0-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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e62f16a7fead6c8d8d69fc9e4f9dddb643d1df4b665c87f2c5594367f04438b
|
|
| MD5 |
7f804e7e6563340f2616a87ced2e1aaa
|
|
| BLAKE2b-256 |
3ea05fc544b5d550ff3a105049274498d5ba220a06e97bb727c2edcd604ca452
|
Provenance
The following attestation bundles were made for beacon_dl-0.4.0-py3-none-any.whl:
Publisher:
release.yml on Postmodum37/beacon-dl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
beacon_dl-0.4.0-py3-none-any.whl -
Subject digest:
1e62f16a7fead6c8d8d69fc9e4f9dddb643d1df4b665c87f2c5594367f04438b - Sigstore transparency entry: 731744326
- Sigstore integration time:
-
Permalink:
Postmodum37/beacon-dl@00b46d76cafe601f3ecf231dda20697606f1669f -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/Postmodum37
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@00b46d76cafe601f3ecf231dda20697606f1669f -
Trigger Event:
release
-
Statement type: