How ahmadsajjad-logix/pak-broadcast-dashboard works
PakBroadcast gathers Pakistani TV channel and satellite telemetry from directory listings, enriches records with channel-profile and mux-page details, stores them in SQLite, and presents a technical dashboard. The principal workflow runs from the directory source through the scraper’s enrichment and persistence steps, then the Flask route reads records for the dashboard. README capabilities include filtering, satellite sorting, and printable cards. The excerpts show scraper-to-source requests and route-to-database reads; unsampled template and scraper sections limit certainty about dashboard wiring and some extraction details.
Main entry points: parse_channels.py Pipeline runner · app.py Flask application · index.html Technical dashboard · logos Local logos
Components 12
Telemetry collection
- Pipeline runner
parse_channels.py - Profile parser
parse_channels.py - Mux lock lookup
parse_channels.py - Logo downloader
parse_channels.py
Registry storage
- Local logos
static/logos - Channel registry
parse_channels.py
Dashboard
- Flask application
app.py - Channel reader
app.py - Technical dashboard
templates/index.html
Other components
- Operator
- Satellite directory
- Dashboard user
Connections 11
- Pipeline runner → Satellite directory: requests listings
- Pipeline runner → Profile parser: parses profiles
- Pipeline runner → Mux lock lookup: checks lock
- Pipeline runner → Logo downloader: downloads logos
- Logo downloader → Local logos: writes images
- Pipeline runner → Channel registry: inserts records
- Dashboard user → Flask application: opens dashboard
- Flask application → Channel reader: calls reader
- Channel reader → Channel registry: reads channels
- Flask application → Technical dashboard: renders records
- Technical dashboard → Dashboard user: displays dashboard