Граббинг видео с сайта ICTV

Идея скачать видео с сайта, появлась после долгого ожидания загрузки он-лайн видео. Вроде и качество неочень но и грузится долго.

Ближе к теме: видео транслируется флешом по протоколу rtm - потоковое видео. Обычный файл mp4 вытянуть просто не получится. В этой статье я покажу свой скрипт, который сам парсит страницу и качает поочередно все видео со страницы.

Но хочу предупредит : НЕ СМОТРИТЕ ВИДЕО С МОБИЛЬНОГО ИНЕТА С САЙТА ICTV.UA! Не знаю, какие криворукие видеоинжерены там сидят, но заливать полуторачасовую программу весом 4Гб это слишкм... мелкие 30минутыне весят до 2Гб. Трафие жрут как ненормальные. Пытались создать защищенную от копирования систему, а получили жирущего трафик монстра.

Вопрос в другом, почему бы не ставить у себя на сайте плеер https://www.youtube.com/user/ICTVchannel и не париться?

 

#!/bin/bash 

links=()
 
while read line
do
  links+=("$line")
done < <(curl -s http://ictv.ua/ua/index/gallery/site/53/album/294 | grep "description tahoma fontsize12 black normal" | sed 's/.* href=\"\(.*\)\".*/\1/')
 
 
 
for links in "${links[@]}"
do
    wget $links -O tmp.html
    TITLE=""
    LINK="text"
    
    while read line
    do
        LINK=$line
    done < <(cat tmp.html | grep "playStream(\"" | sed 's/playStream(\"\(.*\)\"\/.*/\1/;s/\",//')
 
    echo $LINK
 
    while read line
    do
        TITLE=$line;
    done < <(cat tmp.html | grep "<h3 itemprop=\"name\">" | sed -e 's/<[^>]*>//g' | sed 's/[.]/_/;s/[:]/_/;s/[ ]/_/g')
 
    echo $TITLE
    
    RTMPY=""
    echo $RTMPY
 
    RTMPA=""
    echo $RTMPA
    
    FILE=$(echo $RTMPY | sed 's/.*mp4[:]\(.*\)/\1/')
    rtmpdump  #download file
done

Из благих целей я убрал некоторые важные строчки кода, которые не дают ему работать на полную. Школота идет лесом, тот кому действительно нужно - разберется. Либо в камментах отпишется.
Для работы скрипта нужны еще две переменные RTMPY и RTMPA. Ну и параметры в rtmdump.

Получается, обычный парсер страницы)) Возможность качать на ваших плечах.

Комментарии

Добавить комментарий