Както се казва в заглавието на публикацията, този начин на изтегляне на видеоклипове в YouTube не е един от най-добрите, а по-скоро начин да се научи как работят програмите за тази цел като тези, които сме виждали тук (youtube-dl, който за Вярно е, че те имат много възможности и е отлично, препоръчвам го).
Методът е да се използват общи команди от GNU / Linux за тази цел, каквито са Curl и много помощни програми от тряскам y питон които могат да се използват за създаване на скриптове. Трябва да се отбележи, че методът не е автоматичен, а изисква по-скоро намесата на потребителя.
Първо намерихме видеоклип, за да направим „теста“.
След това получаваме съдържанието на страницата чрез скрипт, който го запазваме и изпълняваме, както следва:
"nombre del script" "url de youtube"
Пример:
./script_url https://www.youtube.com/watch?v=1r-bWx3WZfQ
#!/bin/bash
ip=$(curl ifconfig.me)
for ((i=0;i<=10;i++))
do
curl -s $1 | grep "r$i---" | grep "expire" | grep "$ip" | grep "http" | grep "ratebypass" | grep "itag"
done
Описание на скрипта:
Установява се променлива за ip, която ще бъде използвана скоро, последвана от цикъл за изпробване на различни числа в променливата "$ i", след това следващият ред е да се получи съдържанието и думата филтри за "улесняване" местоположението на връзка, която ни интересува.
Когато изпълним предишния скрипт, той връща резултат като този:
Е, те може да мислят, че това няма смисъл, но всъщност е по-лесно, отколкото звучи. От изхода, който са получили, ние търсим, избираме и копираме предполагаема връзка, която е скрита в съдържанието, тя обикновено има тази форма:
http%3A%2F%2Fr2---sn-j5caxvoq5-2ute.googlevideo.com%2Fvideoplayback%3Fitag%3D5%26sver%3D3%26source%3Dyoutube%26mv%3Dm%26id%3Dd6bf9b5b1dd665f4%26ip%3D190.XXX.XX.XX%26key%3Dyt5%26upn%3DOPyez7xDXx0%26expire%3D1394709761%26sparams%3Did%252Cip%252Cipbits%252Citag%252Csource%252Cupn%252Cexpire%26ms%3Dau%26fexp%3D935640%252C927904%252C932250%252C910207%252C927860%252C916611%252C937417%252C913434%252C936910%252C936913%252C902907%252C934022%26mt%3D1394685288%26signature%3D0A96F682936F3E20015E95DC15AC3D291372CDD5.BF5B9EFF421155747A2267148C8F35B018D4A689%26ipbits%3D0
Всъщност има много такива връзки, но не всички работят. Може да е малко сложно да го търсиш, така че за тази работа трябва да намерим думите HTTP, ipbits, нагоре, подпис и които завършват с няколко знака и номера на формуляра BF5B9EFF421155747A2267148C8F35B018D4A689; вече с тези обекти в предполагаемата връзка, ние го копираме.
Трябва да се отбележи, че много пъти връзката може да е грешна, поне в моя случай трябваше да го направя с 3 различни връзки, но тя работи.
Този код, който копирахме, всъщност е адрес към ресурс (който в случая е видеоклипът), но той е написан под формата на символи за използване от езика HTML, като числата, които започват с знак за процент (%).
Тъй като това, което искаме, е адрес, който е „четим“ от типа „http: //“, трябва да преобразуваме тези кодове в символи, така че ще го направим със скрипт, направен в python:
#!/usr/bin/python
def parse_conv(dvar):
df=""
count=0
global chain
chain=""
for dc in dvar:
if dc=="%" and count==0:
count=1
elif count==1 or count==2:
df=df+dc
if count==1:
count=2
else:
count=0
chf=chr(int(df,16))
chain+=chf
df=""
else:
chain+=dc
dvar=input("Código a convertir: ")
parse_conv(dvar)
parse_conv(chain)
print(chain)
Както и при другия скрипт, те го запазват и стартират. Ще се появи нещо подобно, точно там те поставят предишния адрес и му дават enter; Ще се появи адрес „http: //“:
С това ще използваме Wget за изтегляне на видеоклипа, както следва:
wget -c "http://r2---sn-j5caxvoq5-2ute.googlevideo.com/videoplayback?itag=5&sver=3&source=youtube&mv=m&id=d6bf9b5b1dd665f4&ip=190.XXX.XX.XX&key=yt5&upn=OPyez7xDXx0&expire=1394709761&sparams=id,ip,ipbits,itag,source,upn,expire&ms=au&fexp=935640,927904,932250,910207,927860,916611,937417,913434,936910,936913,902907,934022&mt=1394685288&signature=0A96F682936F3E20015E95DC15AC3D291372CDD5.BF5B9EFF421155747A2267148C8F35B018D4A689&ipbits=0"
Надяваме се да свърши и ще изтеглим нашето видео от youtube с доста странно име:
Преименуваме го и виждаме, че това е същото видео като това в връзката, следователно вече проверихме, че това е труден, но полезен начин, ако искате да знаете как работи този тип програма.
Надявам се да ви помогне.
Добър пост, предпочитам по-опростен метод, търся видеото в браузъра и след това го възпроизвеждам в терминала:
#sof | grep Flash
след това копирам процеса и той ми дава flv
cp / proc / xxxxx / fd / xx / path / to / save.flv
Не ми се получи, получавам plugin-co 25074 за мен mem, този mem трябва да е дескриптор на файл.
така или иначе използва du -hL / proc / 25074 / fd / * никой няма размера да бъде видеоклип в Youtube, някой знае ли защо FD не излиза?
Използвам jdownloader от половин десетилетие, за да изтегля хиляди видеоклипове и филми, докато уча. Разбира се, за тези, които предпочитат да използват терминала, той не е валиден инструмент, освен че не е най-лекият (изисква около 100 mb овен с всичко и система).
Не е най-доброто, но има разширение за Firefox, наречено Easy Youtube Video Downloader Express ...
Напускам лигата: https://addons.mozilla.org/es/firefox/addon/easy-youtube-video-download/
Вече ме измъкна от бързане ... Поздрави от Мексико
Винаги съм харесвал "анализирането" на уеб страници, безспорно е, че това парсиране на знания (мрежи) + linux позволява да си представя малки скриптове, които правят мощни неща 😀 (бот с не-злонамерени цели)
на уебсайта си качих този малък скрипт във php, който „показва“ само безплатната vpn парола на „vpnbook“, която се променя толкова често, което се надявам да направя след това да я изпращам на мобилния си телефон всеки ден в 7 ч. сутринта, или чрез sms през страницата на movistar (чрез друг бот): D.
страница
http://rojosbar.com/AL/1.php
код
http://paste.desdelinux.net/4940
можете също да стартирате скрипта от вашия компютър с командата
php СКРИПТ.php
където SCRIPT.php представлява името на файла с php кода
-----
друг скрипт (много зелен), който направих, за да изтегля ISSUU «страници на списания» и да ги запазвам в PDF (защото не харесвам флаш версията, която показват на уебсайта си)
Вижте видеото на работещия php скрипт
https://www.youtube.com/watch?v=h82r41UOWLQ
кодът
http://paste.desdelinux.net/4941
youtube-dl [видео]
за какво друго? просто и ефективно 🙂
Но аз ви поздравявам за усилията
използвам jdownloader
Тук отново оставям python скрипта, защото забелязах, че този, който сложих, няма раздели.
http://paste.desdelinux.net/4942
По-лесен начин и без програми.
1) Щракнете с десния бутон върху видеото.
2) Отидете на "Проверка на елемент"
3) Намерете се във видео маркера
4) Отидете до свойството SRC и копирайте тази връзка (ако искате да пропуснете стъпки 5 и 6, просто отидете на конзолата и напишете wget и копираната връзка)
5) Отворете тази връзка в друг раздел
6) Щракнете с десния бутон -> Запазване на видео като ...> готово, наслаждавайте се.
Страхотен пост, въпреки че мисля, че може да е доста объркващо за публиката, която може да се възползва от него.
Вече в публикацията става ясно, че има по-добри начини за изтегляне на видеоклипове в YouTube. Това, което те възнамеряват, е да покажат възможностите на linux за получаване на данни от мрежата.
Малък пример като принос:
къдрици http://rss.thepiratebay.se/101 | grep магнит | grep връзка | sed -r "s /^.* (. +) $ / \ 1 / g" | докато чете ред; направи ехо предаване-дистанционно -а $ линия; Свършен
Той премахва от thepiratebay rss feed всички музикални магнитни връзки, последните 60, и показва командата за добавянето им към предаване. ако премахнем "ехо", той ги добавя директно, внимателно.
Знам, че това може да се направи с Flexget или подобен, но не става въпрос за това, а за определяне на информацията, която искате да получите от мрежата, и намиране на начин да я изолирате с инструментите, които имаме в Linux.
Надявам се, че не съм разширявал или натрапвал твърде много.
И не би ли било по-лесно да се използва Youtube-DL?
За да изтеглите видео:
Youtube-dl [URL адрес на видео]
За да изтеглите само аудиото:
youtube-dl -x –аудио-формат mp3 [URL адрес на видео]
Добър пост, който ни помага да разберем по-добре.
Използвам CLIPGRAB и ако е конзола, използвам командата clive или cclive. Нямам нужда от скрипт 🙂
Повечето от тях са скучни uu, да, вече има много скриптове и софтуер, които изпълняват функцията, но поне сте се чудили как го правят? uu ...
Е, аз не знаех по този начин, ще го тествам и въпреки това при посещението си в YouTube от инструмента за разработчици видях, че те имат API (REST мисля) ви дава много информация за видеоклипа и следователно връзката към cdn на него.
Ще пробвам това и ще продължа със собствения си скрипт за изтегляне с нещо направено и разбрано от мен хехе. Поздрави и добра статия