abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:55 | Nová verze

    Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Nová verze

    Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.

    Ladislav Hagara | Komentářů: 5
    včera 17:11 | Komunita

    Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 11:22 | Zajímavý článek

    David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …

    Ladislav Hagara | Komentářů: 5
    30.5. 22:44 | Nová verze

    Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.

    Ladislav Hagara | Komentářů: 0
    30.5. 21:22 | Zajímavý článek

    Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 12
    29.5. 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 7
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (90%)
     (3%)
     (4%)
     (4%)
    Celkem 1062 hlasů
     Komentářů: 17, poslední včera 15:31
    Rozcestník

    Jak snadněji stahovat hry a četbu z Českého rozhlasu

    5.3.2023 00:29 | Přečteno: 1928× | poslední úprava: 17.7.2023 01:05

    UPDATE: nyní to funguje jednoduše pomocí yt-dlp, viz tento issue

    Z webu českého rozhlasu si již nějakou dobou stahuji obsah pomocí rozšíření do prohlížeče VideoDownloadHelper. Bohužel se obsah stále častěji streamuje pomocí protokolu DASH v XML verzi, který není tímto rozšířením zatím podporován. Stále ale funguje stahování ručně, k čemuž jsem si napsal malý skript.

    Nejprve je pomocí vývojářských nástrojů potřeba zjistit adresu manifestu, což je popsáno zde.

    V případě, že je souborů na stránce více je lze všecchny zkopírovat postupem zde, což spočívá v zásadě na tom, že vývojářské nástroje běží v okně, pak se spustí vývojářské okno (CTRL+SHIFT+I) na toto okno a do konzole se napíše:

    copy(UI.panels.network.networkLogView.dataGrid.rootNode().flatNodes.map(n => n.request().url()).join('\n'))
    

    Samotný skript (uložil jsem si ho jako stahni_rozhlas.sh) je pak takovýto:

    #!/bin/bash
    for i in ./*
      do COUNTER=0
      sed -i '/^$/d' "$i" # odstraní případné prázné řádky na konci souboru
      name=$( tail -n 1 "$i" ) # Jméno adresáře a souborů z posledního řádku souboru
      mkdir "$name"
      while IFS= read -r line || [ -n "$line" ] # přečte soubor řádku po řádce
        do
          if [[ $line == *.mpd ]] # stahujeme jen manifesty
            then let COUNTER=COUNTER+1
            echo "$line"
            printf -v COUNTER_dec '%02d' $COUNTER # soubory číslujeme vždy dvěma číslicemi
            yt-dlp $line -o "$name"/"$COUNTER_dec"_"$name".m4a
          fi
      done < "$i"
    done
    

    Předpokládá, že bude spuštěn v adresáři, kde jsou pouze soubory následující struktury:

    https://croaod.cz/stream/b00ffa1f-90c1-4f56-8a31-f185325f606e.m4a/manifest.mpd
    https://croaod.cz/stream/ac2e5f60-295f-4d24-8641-0f52f623b4cb.m4a/manifest.mpd
    https://croaod.cz/stream/87d6504d-e8e6-4cd2-bdf5-d29b8b06fcde.m4a/manifest.mpd
    https://croaod.cz/stream/f7a34e65-680d-49c8-bd1c-474450546284.m4a/manifest.mpd
    https://croaod.cz/stream/ed0f47af-a475-4b9a-a2a2-cb259aee7496.m4a/manifest.mpd
    Osudy Jana Vlasáka
    

    Poslední řádek je název adresáře, kam budou jednotlivé díly staženy do stejnojmených souborů očíslovaných vepředu dvěma číslicemi od 01. Všechny ostatní řádky jsou pak odkazy na manifesty jednotlivých dílů. Očekává se, že jsou popořadě.

     

    Doufám, že VDH se tento typ stahování brzo naučí, otázal jsem se na to.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Gréta avatar 5.3.2023 19:36 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu

    něco podobnýho se tady už jednou řešilo hele :O ;D

    5.3.2023 20:44 TechnikTom
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Jenže ten tehdejší skript fungoval na původní verzi prezentace na rozhlas.cz.

    A to perfektně řešil i ten Video Downloadhelper.

    Ale teď skoro vše převedli na jiný způsob a už to tak lehce nefunguje.

    Proto dík za tenhle příspěvek.

    I když pořád zůstává ten opruz se získáním URL jednotlivých dílů.
    Max avatar 6.3.2023 07:50 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Já si v podobném duchu napsal srcipt na stažení cca 200 rozhovorů "Příběhy 21. století" kvůli offline možnosti poslechu na zahraničních cestách. Jedním scriptem jsem si vytahal url, druhým to postahoval.
    Oni ty záznamy mají všude, google, spotify, irozhlas, takže to bylo celkem jednoduché.
    Zdar Max
    Měl jsem sen ... :(
    6.3.2023 20:04 TechnikTom
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Jenže to je právě už "stará vesta".

    Nové pořady takhle snadno nestáhnete.
    6.3.2023 14:52 Samgarr | skóre: 5
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    ffmpeg ma demuxer pro HLS, staci pustit na spravny playlist:

    ffmpeg -i "https://croaod.cz/stream/83478896-a9a9-4bf3-9b53-261cdff893ef.m4a/playlist.m3u8" cro_track.mp3
    6.3.2023 14:55 Samgarr | skóre: 5
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    A odkaz ziskam pres API.
    8.3.2023 04:27 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    No a máte program, kterému lze předhodit url a on stáhne všechno audio, které na dané url je, a ještě to nějak smysluplně pojmenuje?
    18.5.2023 09:43 panveverka
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Dobrý den, mohl byste, prosím, poskytnout ukázkový příklad na to, jak získávat odkaz pomocí API např. pro toto: https://vltava.rozhlas.cz/maxim-gorkij-mestaci-ze-zivota-vazene-rodiny-v-predvecer-zasadnich-spolecenskych-8985267

    Děkuji mockrát! PV
    10.3.2023 12:14 Mayhem
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Je tam neco nelevicoveho, co by slo poslouchat? Obavam se, ze ne.
    12.3.2023 08:14 prace slechti
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Levice neni problem,problem jsou levicaci!
    21.3.2023 10:44 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    To je nějaký bot? Je tam třeba hra od Shakespeara.
    dnes 12:08 Dajaaaa
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    ty jsi problem pičo hlupá.
    2.4.2023 12:04 TechnikTom
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Ten způsob přes ffmpeg asi funguje, ale v mém případě Lubuntu 16 ffmpeg hlásí nějaký zmatek v knihovnách, tak jsem hledal jinou cestu a mělo by to jít i bez něj.

    Jen mi jsou bližší spíš mikropočítače a assembler, tak než vyplodím nějaký script pro zpracování webové stránky, co to zvládne automaticky, tak to bude chvíli trvat.

    Možná tu je někdo ,pro koho to bude záležitost na 5 minut a bude mít chuť to zkusit.

    Můj plánovaný postup by měl být následující:

    1. Ve zdrojovém kódu stránky najít řetězec: "part":"číslo dílu" - tedy pro 11. díl "part":"11" a číslo dílu si uložit

    2. V bezprostředně následujícím kódu najít a uložit řetězec od "http" do "m4a" včetně.

    3. Z tohoto řetězce odstranit obrácená lomítka a slovo "stream" nahradit slovem "download"

    4. Pomocí GET a získaného odkazu stáhnout a pojmenovat číslem dílu audiosoubor. Formát m4a mobil normálně přehraje, tak bych to ani nepřeváděl na mp3.

    5. Pokračovat bodem 1 až na konec stránky.

    Ideálně na vstupu scriptu zadat URL seriálu a požadované pojmenování dílů.

    A seriál se zveřejňuje postupně třeba měsíc, tam mít ošetřeno, že daný díl již může být v cílovém adresáři obsažen díky předchozímu stažení.

    Tak k tomu tak nějak směřuji, až budu mít výsledek, hodím ho sem.
    2.4.2023 23:08 TechnikTom
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Tak jsem slepil ( doslova ) nějaký funkční skript, kdyby někdo potřeboval.

    Asi je to hrozné, ale nikdy jsem něco podobného nepsal a ani se tím nehodlám v budoucnu moc zabývat, ale funguje.

    Soubory se ukládají do adresáře, ve kterém se to spustí, na vstupu se zadá URL stránky příslušného seriálu a název ukládaných souborů. Na konec názvu je automaticky doplněno číslo příslušného dílu.

    Díly již dříve uložené se přeskakují.

    #!/bin/bash echo

    # Funkce pro získání řetězce mezi dvěma řetězci

    get_string_between() {

    start_str=$1

    end_str=$2

    input_str=$3

    result=$(echo "$input_str" | awk -v a="$start_str" -v b="$end_str" 'BEGIN{FS=a} {split($2, parts, b); print parts[1]}')

    echo "$result"

    }

    # Získání URL seriálu a názvu

    read -p "Zadejte URL seriálu: " url

    read -p "Zadejte název seriálu: " series_name

    # Stažení obsahu URL adresy

    echo

    echo

    echo

    echo "Stahování obsahu URL adresy: $url ..."

    echo

    echo

    echo

    # Načtení stránky

    page_content=$(curl -s "$url")

    # Získání odkazů na audio soubory

    audio_link=$(echo "$page_content" | grep -oE '"part"[^ ]*mpd')

    #echo "RAW odkaz na audio soubor:"

    #echo "$audio_link"

    # Úprava odkazů pro stažení - odstranění zpětných lomítek a výměna "stream" za "download"

    audio_link=$(echo "$audio_link" | sed -e 's/\\//g' -e 's/stream/download/g')

    #echo "Upravený odkaz pro stažení:"

    #echo "$audio_link"

    readarray -t links_array <<< "$audio_link"

    echo "----------------------------------------------------------"

    # Procházení řádků s odkazy

    for ((i=0; i<${#links_array[@]}; i++)); do

    #echo ${links_array[$i]}

    # Vyseparování čísla dílu

    part_str='"part":"'

    part=$(get_string_between "$part_str" '"' "${links_array[$i]}")

    #echo "Číslo dílu: $part"

    # Vyseparování odkazu na soubor

    link=$(get_string_between "https" "m4a" "${links_array[$i]}")

    odkaz="https"$link"m4a"

    echo "$odkaz"

    # vytvoření názvu ukládaného souboru s číslem dílu

    # Pokud je číslo dílu menší než 10, vlož na začátek nulu kvůli řazení při přehrávání. Taky přidáme příponu

    if [ $(( $part )) -lt 10 ]; then

    new_filename="${series_name} 0$part.m4a"

    else

    new_filename="${series_name} $part.m4a"

    fi

    echo "$new_filename"

    # Kontrola jestli již soubor existuje a pokud ne, tak jeho stažení

    if [ -e "$new_filename" ]; then

    echo "Soubor již existuje"

    else

    echo "Stahuji"

    curl ${odkaz} -o "$new_filename"

    #curl ${links_array[$i]} -o "$new_filename"

    fi

    echo "----------------------------------------------------------"

    done

    echo

    echo

    echo

    echo "Stahování dokončeno."

    echo

    echo

    echo

    3.4.2023 09:27 TechnikTom
    Rozbalit Rozbalit vše Re: Jak snadněji stahovat hry a četbu z Českého rozhlasu
    Jelikož ty místní tagy "code" mi rozhodily formátování,

    tak při následné úpravě se mi podařilo dostat příkaz "echo" do prvního řádku,

    což je samozřejmě špatně a skript při spuštění nadává.

    Na jiném PC s novějším OS mi funguje i ffmpeg, tak tady je modifikace části kódu pro uložení do mp3, ale je to znatelně pomalejší.

    if [ $(( $part )) -lt 10 ]; then
    
    new_filename="${series_name} 0$part.mp3"
    
    else
    
    new_filename="${series_name} $part.mp3"
    
    fi
    
    echo "$new_filename"
    
    # Kontrola jestli již soubor existuje a pokud ne, tak jeho stažení
    
    if [ -e "$new_filename" ]; then
    
    echo "Soubor již existuje"
    
    else
    
    echo "Stahuji"
    
    
    ffmpeg -v quiet -stats -i "${odkaz}" "$new_filename"
    

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.