Skip to main content

Enjoy the ČRo offline

Project description

🇬🇧 English Summary

🐍 CRo-DL (Czech Radio Downloader)

Listen to MůjRozhlas.cz programs offline.

Overview

CRo-DL is a Python-based 🐍 tool that allows Czech Radio license payers to download and store radio programs locally for offline listening. It supports individual broadcasts, full series, and entire program schedules. Series are saved with episode numbers and user-friendly titles.

⚠️ Respect copyright laws—downloaded content is for personal use only and should not be shared.

Dependencies

  • Python 3.10+ is required.
  • Czech Radio mainly uses MP3 and HLS/DASH streams (AAC/M4A).
  • FFmpeg is required for handling DASH streams (optional).

Installation

CRo-DL can be installed via:

📦 PyPI

pip install cro-dl

🚀 uv (alternative method)

Download the source code (zip) and sync dependencies:

uv sync
uv run cro-dl <url>

🔧 Git clone (development mode)

git clone git@github.com:klimanek/cro-dl.git
uv sync
uv run cro-dl <url>

Usage

1️⃣ Open mujrozhlas.cz, find a broadcast, series, or episode.

2️⃣ Copy the URL from the address bar.

3️⃣ Run in the terminal:

cro-dl <url>

If multiple formats are available, MP3 is preferred. To specify a format (e.g., HLS):

cro-dl --stream-format "hls" <url>

🇨🇿 Česká verze

CRo-DL (Český Rozhlas Downloader)

Poslouchejte pořady z MůjRozhlas.cz i offline.

Popis

CRo-DL je nástroj umožňující každému koncesionáři ČRo stáhnout si pořady Českého rozhlasu lokálně na své zařízení s motivací je poslouchat mimo dosah vln. Dbejte autorských práv a díla stažená pro vlastní potřebu nešiřte dál.

Podporovány jsou jak jednotlivé rozhlasové příspěvky, tak i celé seriály a kompletní programy -- seriály se stahují s číslem dílu a pod svým názvem. Každý titul je uložen do vlastní složky.

Stažení seriálu

Není-li ještě nějaký díl seriálu dostupný, CRo-DL vás upozorní a uvede datum i čas uvedení.

Závislosti

Software je napsaný v jazyce Python 🐍, proto byste v systému měli mít Python ve verzi alespoň 3.10.

Můjrozhlas.cz v zásadě používá formát mp3 pro svá díla (ČRo) a streamy HLS a DASH pro díla třetích stran. Preferovány jsou formáty mp3 a HLS pro stream. Pokud byste však chtěli z různých důvodů použít DASH, pro vytvoření a uložení finálního souboru je nutné mít v systému nainstalovaný ffmpeg.

Externí balíčky v Pythonu jsou uvedeny ve specifikaci (viz pyproject.toml). Při instalaci se stáhnou a nainstalují automaticky.

Instalace

CRo-DL lze instalovat několika způsoby:

  1. PyPi / pip
  2. Zip + uv
  3. Git clone + uv

📦 PyPi

Nejčastěji z PyPi pomocí nástroje pip:

pip install cro-dl

🚀 uv

Alternativou je lokální použití CRo-DL pomocí nástroje uv poté, co si stáhnete zde zip soubor s codebase.

uv sync

Nebo rovnou můžete stáhnout audio soubor z webu s <url>

uv run cro-dl <url>

a všechny závislosti se nainstalují automaticky.

Pro vývoj pak nejlepší bude klonovat zdejší repozitář:

git clone git@github.com:klimanek/cro-dl.git

Použití

Otevřete stránku mujrozhlas.cz, najděte si pořad / epizodu / seriál a z adresního řádku zkopírujte aktuální URL. Otevřte terminál a zadejte

cro-dl <url>

Příklad

„Tuk dá každý raději než kostní dřeň.“ Endokrinolog vyvíjí novou léčbu diabetu kmenovými buňkami. Zkopírujte URL z adresního řádku a abyste si pořad stáhli, do terminálu zadejte

cro-dl https://www.mujrozhlas.cz/leonardo-plus/tuk-da-kazdy-radeji-nez-kostni-dren-endokrinolog-vyviji-novou-lecbu-diabetu-kmenovymi

Stažení příspěvku

V tomto případě jsou dostupné tři formáty: mp3, stream HLS a stream DASH. Většinou však bývá dostupný pouze stream, anebo soubor ve formátu mp3. Ten je preferován (viz soubor settings.py). Není-li dostupný, použije se HLS, DASH jako poslední.

Chcete-li si pořad stáhnout ve vámi preferovaném formátu, použijte možnost --stream-format (-sf):


cro-dl --stream-format "hls" https://www.mujrozhlas.cz/leonardo-plus/tuk-da-kazdy-radeji-nez-kostni-dren-endokrinolog-vyviji-novou-lecbu-diabetu-kmenovymi

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

cro_dl-1.5.0.tar.gz (241.4 kB view details)

Uploaded Source

Built Distribution

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

cro_dl-1.5.0-py3-none-any.whl (237.8 kB view details)

Uploaded Python 3

File details

Details for the file cro_dl-1.5.0.tar.gz.

File metadata

  • Download URL: cro_dl-1.5.0.tar.gz
  • Upload date:
  • Size: 241.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.12 {"installer":{"name":"uv","version":"0.9.12"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for cro_dl-1.5.0.tar.gz
Algorithm Hash digest
SHA256 5b86e4041ede1215741ef2e54270cdf2e53cad03014308d27563d130322e9992
MD5 ad4d0c53cccbb4f711632eb863f3171e
BLAKE2b-256 0392db06dffb50310100aa14c30935df10efd8dae4227cbdda425d0334d6b819

See more details on using hashes here.

File details

Details for the file cro_dl-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: cro_dl-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 237.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.12 {"installer":{"name":"uv","version":"0.9.12"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for cro_dl-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8590626b1954271aebfb412bdbda183d53be5231ada346f6d9799d4fcdf17be9
MD5 c0dd88ad5ad5495021667571bdc23fc4
BLAKE2b-256 59a8d3a4df4ba5a763c2c11e76e2d5100241dd778f2b0ee9235cd3cd29d5e5f6

See more details on using hashes here.

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