Način za preuzimanje YouTube videozapisa za učenje

Kao što naslov posta kaže, ovaj način preuzimanja YouTube video zapisa nije jedan od najboljih, već način učenja kako funkcioniraju programi u tu svrhu poput onih koje smo ovdje vidjeli (youtube-dl, koji za True, imaju mnogo mogućnosti i izvrsno je, preporučujem).

Metoda je korištenje uobičajenih naredbi iz GNU / Linux u tu svrhu, takvi kakvi jesu curl i mnoge komunalne usluge iz bash y python koji se mogu koristiti za izradu skripti. Treba napomenuti da metoda nije automatska, već zahtijeva da korisnik intervenira.

Prvo smo pronašli video za "test".

video_target

Tada sadržaj stranice dobivamo putem skripte koju spremamo i izvršavamo na sljedeći način:

"nombre del script" "url de youtube"
Primjer:
./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

Opis skripte:

Za ip će se uspostaviti varijabla koja će se uskoro koristiti, nakon čega slijedi petlja za isprobavanje različitih brojeva u varijabli "$ i", a zatim je sljedeći redak dobivanje filtera sadržaja i riječi za "olakšavanje" lokacije veze to nas zanima.

Kada izvršimo prethodnu skriptu, ona daje izlaz poput ovog:

kod_pribavljen

Pa, mogli bi pomisliti da ovo nema smisla, ali zapravo je lakše nego što zvuči. Iz rezultata koji su dobili, pretražujemo, odabiremo i kopiramo navodnu vezu koja je skrivena u sadržaju, obično ima ovaj oblik:

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

Postoji puno takvih veza, ali ne rade sve. Tražiti to može biti prilično nezgodno, pa za ovaj posao moramo pronaći riječi http, ipbits, upn, potpis a koji se završavaju s nekoliko znakova i brojeva obrasca BF5B9EFF421155747A2267148C8F35B018D4A689; već s ovim objektima u navodnoj vezi, kopiramo ga.

Treba napomenuti da mnogo puta veza može biti pogrešna, barem u mom slučaju to sam morao učiniti s 3 različita linka, međutim, to djeluje.

Taj kôd koji kopiramo zapravo je adresa resursa (što je u ovom slučaju videozapis), međutim on je napisan u obliku znakova za upotrebu HTML jezika, poput brojeva koji počinju znakom postotka (%).

Kako želimo adresu koja je "čitljiva" tipa "http: //", ove kodove moramo pretvoriti u znakove, pa ćemo to učiniti skriptom napravljenom u pythonu:

#!/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)

Kao i kod druge skripte, oni je spremaju i pokreću. Nešto slično će se pojaviti, upravo tamo zalijepe prethodnu adresu i daju joj enter; Pojavit će se adresa poput "http: //":

readable_address

Ovim ćemo koristiti wget za preuzimanje video zapisa, kako slijedi:

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"

download_wget

Nadamo se da će se završiti i da ćemo preuzeti svoj video s youtubea pod prilično čudnim imenom:

video_rare

Preimenujemo ga i vidimo da se radi o istom videozapisu kao i onaj u poveznici, stoga smo već potvrdili da je to težak, ali koristan način ako želite znati kako funkcionira ova vrsta programa.

video_test

Nadam se da će vam pomoći.


14 komentara, ostavi svoj

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   himekisan rekao je

    Dobar post, preferiram jednostavniju metodu, tražim video u pregledniku i reproduciram ga u terminalu:
    #lsof | grep Flash
    onda kopiram postupak i on mi daje flv
    cp / proc / xxxxx / fd / xx / path / to / save.flv

    1.    @world rekao je

      Nije mi pošlo za rukom, dobivam plug-co 25074 za mene mem, taj mem bi trebao biti deskriptor datoteke.
      u svakom slučaju koristeći du -hL / proc / 25074 / fd / * nijedan nema veličinu kao Youtube video, zna li neko zašto FD ne izlazi?

    2.    anonimo rekao je

      Pola decenije koristim jdownloader za preuzimanje hiljada videozapisa i filmova dok učim. Naravno, za one koji više vole koristiti terminal nije valjan alat, osim što nije najlakši (potrebno je oko 100 MB RAM-a sa svime i sistemom).

  2.   Blacknet rekao je

    Nije najbolje, ali postoji proširenje za Firefox pod nazivom Easy Youtube Video Downloader Express ...

    Napuštam ligu: https://addons.mozilla.org/es/firefox/addon/easy-youtube-video-download/

    Već me izbavio iz žurbe ... Pozdrav iz Meksika

  3.   Marcos rekao je

    Uvijek sam volio "raščlanjivanje" web stranica, nesporno je da ovo raščlanjivanje znanja (mreže) + linux omogućuje zamišljanje malih skripti koje čine moćne stvari 😀 (bot u ne-zlonamjerne svrhe)

    na svoju web stranicu sam učitao ovu malu skriptu u php koja "prikazuje" samo besplatnu vpn lozinku za "vpnbook" koja se mijenja svako toliko, a nadam se da ću je kasnije poslati na mobitel svaki dan u 7 sati ili putem sms-a kroz movistar stranicu (preko drugog bota): D.

    pagina
    http://rojosbar.com/AL/1.php

    Šifra
    http://paste.desdelinux.net/4940

    skriptu možete pokrenuti i sa računara pomoću naredbe

    php SCRIPT.php

    gdje SCRIPT.php predstavlja ime datoteke s php kodom

    -----
    još jednu skriptu (vrlo zelenu) koju sam napravio da preuzmem ISSUU «stranice časopisa» i spremim ih u PDF (jer mi se ne sviđa flash verzija koju prikazuju na njihovoj web stranici)

    Pogledajte video o pokrenutoj php skripti
    https://www.youtube.com/watch?v=h82r41UOWLQ

    kod
    http://paste.desdelinux.net/4941

  4.   Conda Granda rekao je

    youtube-dl [video]
    za šta još? jednostavno i efikasno 🙂
    Ali, čestitam vam na trudu

  5.   hola rekao je

    koristim jdownloader

  6.   c4explosive rekao je

    Ovdje opet ostavljam python skriptu, jer sam primijetio da onaj koji sam stavio nema tabove.

    http://paste.desdelinux.net/4942

  7.   Juan rekao je

    Jednostavniji način i bez programa.

    1) Desni klik na videozapis.
    2) Idite na "Pregledaj element"
    3) Pronađite se u video oznaci
    4) Idite na svojstvo SRC i kopirajte tu vezu (ako želite preskočiti korake 5 i 6, samo idite na konzolu i unesite wget i kopirani link)
    5) Otvorite tu vezu na drugoj kartici
    6) Desni klik -> Spremi video kao ...> gotovo, uživajte.

  8.   dernalis rekao je

    Sjajan post, iako mislim da publici koja može to iskoristiti može biti prilično zbunjujuće.
    Već u postu je jasno da postoje bolji načini za preuzimanje YouTube video zapisa. Ono što namjeravaju je pokazati mogućnosti linuxa za dobivanje podataka s weba.

    Mali primjer kao doprinos:
    curl -s http://rss.thepiratebay.se/101 |. | grep magnet | grep link | sed -r "s /^.* (. +) $ / \ 1 / g" | dok se čita red; radi echo prijenos-daljinski -a $ linija; gotovo

    Uklanja sa feeda thepiratebay rss sve veze sa muzičkim magnetima, posljednjih 60, i prikazuje naredbu za njihovo dodavanje u prijenos. ako uklonimo "echo", dodaje ih izravno, oprezno.
    Znam da se to može učiniti s Flexgetom ili sličnim, ali nije riječ o tome, već o određivanju informacija koje želite dobiti s weba i pronalaženju načina da se to izolira pomoću alata koje imamo u Linuxu.

    Nadam se da nisam previše produžio ili upao.

  9.   nsz rekao je

    I ne bi li bilo lakše koristiti Youtube-DL?

    Da biste preuzeli video:
    Youtube-dl [video URL]

    Da biste preuzeli samo zvuk:
    youtube-dl -x –audio-format mp3 [URL video]

  10.   @world rekao je

    Dobar post koji nam pomaže da bolje razumijemo.

  11.   cehovi rekao je

    Koristim CLIPGRAB, a ako je konzola koristim naredbu clive ili cclive. Ne treba mi nikakva skripta 🙂

  12.   kid_goth rekao je

    Većina ih je dosadna, da, već postoji mnogo skripti i softvera koji ispunjavaju funkciju, ali barem ste se pitali kako to rade? uu ...

    Pa, nisam znao na ovaj način, testirat ću ga, ali unatoč tome, prilikom posjete YouTubeu alata za programere vidio sam da imaju api (REST mislim) daje vam puno informacija o video snimku i stoga link na cdn toga.

    Pokušat ću ovo i nastaviti sa vlastitom skriptom za preuzimanje s nečim učinjenim i razumljivim od mene hehe. Pozdrav i dobar članak