качаем ролики с сайта Россия К
Потребовалось нам скачать передачу АГОРА с сайта и пересмотреть ее в режиме offline.
открываем ссылку
https://tvkultura.ru/video/show/brand_id/61882/episode_id/2169406/video_id/2182968/
переходим в режим отладки Ctrl+Shift+C, выбираем закладку «Сеть» (Network)
очищаем список загруженных документов, жмем в плеере play и у нас начинают появляться подгруженные файлы, в списке находим ролики с расширением ts. Да вся передача разбита на множество небольших фрагментов, по 10-15 секунд, нам надо их всех выкачать.
на найденном файле жмем правой клавишей и выбираем Копировать->Копировать URL (Copy->Copy link address)
у нас в буфере обмена оказывается ссылка примерно такого вида:
находим последний фрагмент, перематываем ролик до конца и подгружается файл с адресом:
нам нужны значения от 1 до 374, а далее дело техники, я уже подготовил bash скрипт
#!/bin/bash
# задаем диапазон фрагментов, от 1 до 374
for counter in {1..374}
do
# дополняем нулями до трехзначного числа (чтобы при склейке в один файл фрагменты не перемешались)
foo=$(printf "%03d" $counter)
# скачиваем ролики по одному и сохраняем с дружественными именами
wget -O "video_$foo.ts" "https://a3569458507-s81121.cdn.ngenix.net/_cdn_auth/secure/v/vh/vod_hls/definst/smil:vh/smil/002/182/968_d20190519103336.smil/media_b800000_pd3628000_$counter.ts"
done
# дальше с помощью ffmpeg склеиваем в один файл и сохраняем в формате mp4
ffmpeg -f concat -safe 0 -i <(for f in ./*.ts; do echo "file '$PWD/$f'"; done) -c copy output.mp4
# удаляем лишние файлы
find . -name "*.ts" -type f -delete
в результате работы скрипта получается файл output.mp4, в котором находится вся передача