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í
×
    dnes 13:33 | IT novinky

    Dnes ve 12:00 byla spuštěna první aukce domén .CZ. Zatím největší zájem je o dro.cz, kachnicka.cz, octavie.cz, uvycepu.cz a vnady.cz [𝕏].

    Ladislav Hagara | Komentářů: 1
    dnes 13:22 | Nová verze

    JackTrip byl vydán ve verzi 2.3.0. Jedná se o multiplatformní open source software umožňující hudebníkům z různých částí světa společné hraní. JackTrip lze instalovat také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Pozvánky

    Patnáctý ročník ne-konference jOpenSpace se koná 4. – 6. října 2024 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytváří všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 0
    dnes 03:11 | Nová verze

    Program pro generování 3D lidských postav MakeHuman (Wikipedie, GitHub) byl vydán ve verzi 1.3.0. Hlavní novinkou je výběr tvaru těla (body shapes).

    Ladislav Hagara | Komentářů: 4
    včera 23:11 | Bezpečnostní upozornění

    Intel vydal 41 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20240514 mikrokódů pro své procesory řešící INTEL-SA-01051, INTEL-SA-01052 a INTEL-SA-01036.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | IT novinky

    Společnost Raspberry Pi patřící nadaci Raspberry Pi chystá IPO a vstup na Londýnskou burzu.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | IT novinky

    Google na své vývojářské konferenci Google I/O 2024 představil řadu novinek. Keynote byl věnován umělé inteligenci (DeepMind, Gemini, Responsible AI).

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Bezpečnostní upozornění

    V Gitu bylo nalezeno 5 zranitelností. Opraveny jsou ve verzích 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2 a 2.39.4. Útočník může připravit repozitář tak, že při jeho klonování (git clone) může dojít ke spuštění libovolného kódu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | IT novinky

    Virtualizační softwary VMware Workstation Pro a VMware Fusion Pro jsou nově pro osobní použití zdarma. Softwary VMware Workstation Player a VMware Fusion Player končí.

    Ladislav Hagara | Komentářů: 2
    včera 02:11 | Nová verze

    Linuxová distribuce Endless OS (Wikipedie) byla vydána ve verzi 6.0.0. Přehled novinek i s náhledy v příspěvku na blogu, poznámkách k vydání a také na YouTube.

    Ladislav Hagara | Komentářů: 2
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (74%)
     (5%)
     (10%)
     (10%)
    Celkem 291 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

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

    5.3.2023 00:29 | Přečteno: 1903× | 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.
    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.