Ako sťahovať videá zo súkromných FB skupín

...kým navždy zmiznú

2 years ago   •   8 min read

By Vladimír Záhradník
Zdroj: Kon Karampelas, Unsplash

Pred pár dňami som sa zaregistroval do jednej z tých online výziev. Počas týždňa ste museli sledovať videá a pracovať na denných cieľoch. Vedel som, že táto výzva prináša veľmi hodnotné informácie, ale na pozeranie obsahu som nemal čas.

Organizátori používali súkromnú skupinu na Facebooku, v ktorej naživo vysielali ich sústredenia, zverejňovali aktuality a moderovali diskusie s divákmi.

Neskôr oznámili, že skupina ostáva, ale že všetky videá vymažú. Výzva sa chýlila ku koncu a ja som mal dve možnosti — za jeden deň pozrieť všetky videá alebo si ich stiahnuť a pozrieť si ich neskôr svojím tempom. Prirodzene som si vybral druhú možnosť.

Prehlásenie: Žiadnym spôsobom pirátstvo neschvaľujem. V tomto príspevku vám ukážem, ako stiahnuť obsah, ku ktorému ste mali oprávnenia. Vyzývam vás k tomu, aby ste si videá sťahovali iba na osobnú potrebu a s nikým ich nezdieľali. Rešpektujte, prosím, práva pôvodných autorov.

Prísť na to, ako stiahnuť obsah, mi trvalo niekoľko hodín pokusov a omylov. Zvyčajne sú videá streamované do vášho telefónu alebo počítača rozdelené na drobné kúsky, ktoré majú len zopár sekúnd. Všetky tieto kúsky sú uvedené v manifeste a ak tento súbor nájdete, môžete všetky tieto segmenty stiahnuť a spojiť ich dokopy. Vývojársku konzolu v mojom prehliadači dobre poznám. Doteraz som vždy našiel spôsob, ako si stiahnuť video, pokiaľ nie je šifrované. Ale poviem vám jedno — Facebook je ukecaný. Je dosť možné, že sa v záznamoch stratíte, aj keď viete, čo robíte. Musí existovať lepší spôsob.

Sieťová aktivita Facebooku

Hľadal som návod, ako stiahnuť video zo súkromnej FB skupiny a našiel som ich niekoľko. Taktiež som narazil na niekoľko online nástrojov, ktoré pre vás niektoré kroky automatizujú. Avšak všetky tieto návody a nástroje používajú tú istú techniku, ktorá vám umožní stiahnuť video iba v rozmazanom SD formáte, ktorý je určený pre malé obrazovky mobilov.

Prvý spôsob: Stiahnutie v SD

Tento spôsob je dostupný každému a nájdete nepreberné množstvo online nástrojov, ktoré vám celý postup ešte viac spríjemnia.

Prvý krok: Otvorte odkaz s videom

Nájdite si príspevok s videom, ktoré chcete stiahnuť a zväčšite video, aby obsadilo celú stránku.

0:00
/
Zväčšenie videa

Mali by ste vidieť obrazovku podobnú tejto:

Video na celú obrazovku

Teraz si skopírujte URL odkaz k videu. Mal by vyzerať nejako takto:

https://www.facebook.com/vladimir.zahradnik1/videos/3175253852495827/
Poznámka: Niektoré skupiny majú videosekciu so všetkými videami zobrazenými na jednom mieste.

Druhý krok: Upravte odkaz, aby ukazoval na verziu webu pre mobily

Je to jednoduché — len nahraďte časť www za m a otvorte namiesto pôvodného odkazu ten nový:

https://m.facebook.com/vladimir.zahradnik1/videos/3175253852495827/

Teraz by ste mali vidieť stránku na Facebooku navrhnutú pre mobilné telefóny.

Aktualizácia 1.11.2020: Ako poukázala jedna moja čitateľka, metóda, ktorú som tu uviedol, už viac nefunguje. Facebook stránku pre mobilné zariadenia zmenil. Teraz používa na prehratie videa interný webový prehrávač. Už na video nemôžete kliknúť a uložiť si ho. Našiel som však jednoduchý spôsob, ako video stiahnuť. Dnes som spravil rýchly návod a na demonštráciu som si vybral náhodné video z Facebooku. Postup pre videá v súkromných skupinách by mal byť rovnaký. V tomto návode používam Firefox, ale postup v Chrome by mal byť veľmi podobný. Video nižšie pokračuje z bodu otvorenia mobilnej verzie webu.

0:00
/
Prvý spôsob, aktualizovaný

Tretí krok: Otvorte kartu Sieť z menu pre webových vývojárov

Mobilná verzia webu ukazuje na video súbor v jeho celistvosti. Video nie je rozdelené na menšie úseky. Nevýhodou tohto prístupu je, že stiahnuté video je v nižšej kvalite. Avšak aj napriek tomu uprednostňujem mať aspoň niečo, ako vôbec nič. V mojej pôvodnej metóde ste si mohli stiahnuť video kliknutím na video a následne na položku v menu Uložiť cieľ odkazu ako.... Tento prístup už viac nefunguje. Avšak stále je tu spôsob, ako video stiahnuť.

Každá webstránka má nejaké zdroje, ktoré si prehliadač potrebuje stiahnuť. Vaše video je jedným z nich. Všetky tieto zdroje sú viditeľné na karte Sieť vo vývojárskej konzole. Existuje niekoľko spôsobov, ako sa na túto kartu dostať:

  1. Kliknite na tlačidlo menu v pravom hornom rohu. Potom kliknite na menu Webový vývojár a vyberte položku Sieť
  2. Stlačte Ctrl+Shift+E
  3. Kliknite pravým tlačidlom myši na video, kliknite na položku Preskúmať prvok a potom kliknite na kartu Sieť

Štvrtý krok: Stlačte F5 na obnovenie webstránky

Obnovenie webstránky je voliteľný krok, ale zaručuje vám, že všetky zdroje webovej stránky sa znova stiahnu, vrátane vášho videa. Jednoducho stlačte F5 a mali by ste vidieť ako prehliadač sťahuje zdroje.

Piaty krok: Stlačte tlačidlo Prehrať

Potom, čo začnete prehrávať video, by ste mali vidieť vaše video na karte Sieť. Môžete použiť filter Médiá na zobrazenie iba relevantných súborov.

Šiesty krok: Stiahnite si video

Nakoniec kliknite pravým tlačidlom myši na zdroj videa a otvorte ho na novej karte. Na tejto karte máte priamy odkaz na súbor videa a môžete si ho stiahnuť po kliknutí na položku menu Uložiť cieľ odkazu ako....

Druhý spôsob: Stiahnutie v HD

Na rozdiel od prvého spôsobu, spôsob, ktorý tu popíšem, ešte nikto nepokryl. A to napriek oveľa lepším výsledkom. Umožňuje vám stiahnuť si videá v HD, čím sa zachová tá najvyššia možná kvalita.

youtube-dl

Youtube-dl je nástroj, ktorý občas používam, keď si chcem stiahnuť z YouTube video. Ale nech vás názov neoklame. Tento nástroj podporuje sťahovanie videí z mnohých webstránok, vrátane Facebooku.

youtube-dl je program pre príkazový riadok na sťahovanie videí z YouTube.com a zopár ďalších stránok. — oficiálna webstránka

Podrobne sa youtube-dl venujem v tomto videu:

Táto aplikácia je napísaná v Pythone a beží všade. Pre prípad ju mám nainštalovanú aj na svojom serveri. Zatiaľ čo sú hlavné funkcie dobre zdokumentované, individuálne extraktory ako Facebook nemajú žiadnu dokumentáciu okrem ich zdrojového kódu. Najlepší spôsob, ako otestovať, či dokáže youtube-dl stiahnuť video, je to jednoducho vyskúšať.

Aktualizácia 23.10.2020: zdrojový repozitár youtube-dl bol odstránený po DMCA výzve od organizácie RIAA. Autori na ich webstránke zverejnili archív najnovšieho zdrojového kódu a binárky. Avšak v tejto chvíli je budúcnosť projektu neistá. Rozhodol som sa preto vytvoriť zrkadlo repozitára z jeho nedávnej zálohy na mojom vlastnom git serveri. Kód nájdete tu.

Aktualizácia 17.11.2020: GitHub opäť sprístupnil repozitáre youtube-dl. Celú situáciu okolo youtube-dl podrobne vysvetlili na ich blogu.

Stiahnutie chráneného FB videa

Za normálnych okolností funguje youtube-dl perfektne na sťahovanie verejných videí. Avšak video zo súkromnej skupiny na Facebooku je iný prípad. Pokiaľ sa ho pokúsite stiahnuť, youtube-dl vás nakoniec požiada o prihlasovacie údaje:

[vzahradnik@Ryzen Stiahnuté]$ youtube-dl https://www.facebook.com/vladimir.zahradnik1/videos/3175253852495827/
[facebook] 3175253852495827: Downloading webpage
[facebook] 3175253852495827: Downloading webpage
ERROR: This video is only available for registered users. Use --username and --password or --netrc to provide account credentials.


Tentokrát sme neuspeli, ale výstup vyzerá sľubne — ukazuje nám, že tento extraktor s najväčšou pravdepodobnosťou podporuje sťahovanie chráneného obsahu.

Poznámka: Kým extraktor jedného dňa funguje, nikto vám nezaručí, že bude fungovať aj ten nasledujúci. Webstránky sa často menia a vývojári musia tento extraktor aktualizovať, aby reagoval na zmeny. Ak poznáte Python, aj vy s tým môžete pomôcť!

Pridanie informácií pre prihlásenie

Youtube-dl podporuje ako voliteľné parametre username (používateľské meno) a password (heslo). Toto sú prihlasovacie údaje, ktoré používate pri prihlasovaní do Facebooku. Skúsme stiahnuť video opäť, no tentokrát so zadanými prihlasovacími údajmi:

[vzahradnik@Kaveri Stiahnuté]$ youtube-dl --username vladimir.zahradnik1 --password <moje-heslo> https://www.facebook.com/vladimir.zahradnik1/videos/3175253852495827/
[facebook] Downloading login page
[facebook] Logging in
[facebook] 3175253852495827: Downloading webpage
[facebook] 3175253852495827: Downloading webpage
[facebook] 3175253852495827: Downloading webpage
[download] Destination: Facebook video #3175253852495827-3175253852495827.f1470610743121723v.mp4
[download] 100% of 1.58GiB in 00:17
[download] Destination: Facebook video #3175253852495827-3175253852495827.f250546852719691a.m4a
[download] 100% of 80.90MiB in 00:00
[ffmpeg] Merging formats into "Facebook video #3175253852495827-3175253852495827.mp4"
Deleting original file Facebook video #3175253852495827-3175253852495827.f1470610743121723v.mp4 (pass -k to keep)
Deleting original file Facebook video #3175253852495827-3175253852495827.f250546852719691a.m4a (pass -k to keep)

Úspech! Teraz máme konečne naše video stiahnuté a môžeme si ho kedykoľvek a kdekoľvek pozrieť, dokonca aj bez internetového pripojenia.

Problémy

V mojom prípade som stiahol viac ako 16 videí a počas tejto doby som našiel niekoľko problémov. U prvého spôsobu je to zjavné — stiahnuté video je v nízkej kvalite. Druhý spôsob dáva tie najlepšie výsledky, ale pripravte sa na to, že budete riešiť problémy s autentifikáciou a autorizáciou:

Dvojfaktorová autentifikácia na Facebooku

Pokiaľ používate dvojfaktorovú autentifikáciu, aby ste ešte viac zvýšili zabezpečenie účtu, sťahovanie s aplikáciou youtube-dl vám nebude fungovať. Ako možno viete, pri dvojfaktorovej autentifikácii ste požiadaní o vaše používateľské meno a heslo. No taktiež musíte potvrdiť vašu identitu aj iným spôsobom. Typicky zadáte 6-miestny kód z vašej autentifikačnej aplikácie. V aplikácii youtube-dl nie je žiadny spôsob, ako zadať ďalšie informácie.

Heslá aplikácií

Nie všetky aplikácie podporujú dvojfaktorovú autentifikáciu. Aby ste s nimi mohli pracovať, Facebook vám umožňuje vygenerovať heslo aplikácie. Mali by ste sa vedieť prihlásiť bez zadania hesla k vášmu účtu a dodatočného kódu.

Typicky vygenerujete heslo aplikácie v nastaveniach zabezpečenia účtu Facebooku. Avšak zdá sa, že táto funkcia nefunguje správne. Keď som vytvoril heslo, Facebook ma stále žiadal o dodatočný kód. Možno, že ide o chybu alebo jednoducho Facebook implementoval túto funkciu inak ako všetci ostatní. Taktiež, keď som sa pokúsil vymazať vygenerovaný záznam, dostával som zvláštne chybové hlášky (rozhodne chyba v kóde).

Stránka zabezpečenia účtu Facebooku

Takže, ak používate dvojfaktorovú autentifikáciu a chcete si stiahnuť súkromné video, neexistuje iný spôsob ako dočasne túto funkciu vypnúť.

Váš účet na FB môže byť zablokovaný

Predtým ako youtube-dl stiahne video, zakaždým pošle vaše prihlasovacie informácie. Tento nástroj je bezstavový. Neukladá žiadny cookie záznam, ktorý by povedal Facebooku, že ste to stále vy. Ak stiahnete viac ako pár videí, Facebook si môže všimnúť nezvyčajnú aktivitu a aby zabránil možným škodám, zablokuje váš účet.

Aby ste ho odomkli, potrebujete si zmeniť heslo a prejsť niekoľkými krokmi, kým vás Facebook opäť pustí dnu. Za posledné dva dni ma Facebook zablokoval dvakrát. Hlavne ten druhý raz bol nečakaný. Od stiahnutia všetkých videí prešlo už niekoľko hodín. V tom čase som si riešil svoje veci, rozprával som sa so zopár ľuďmi cez Messenger a zrazu som už nemohol posielať správy. Najprv som si pomyslel, že ide o zvláštnu chybu. No keď som sa úplne odhlásil a opäť prihlásil, Facebook mi povedal, že môj účet uzamkli — opäť! Je fajn tiež spomenúť, že obrazovka na zmenu hesla bola s chybami. Facebook mi zmenil heslo, ale zobrazil chybu a ja som nemohol pokračovať. Nakoniec som to poriešil cez postup „Zabudol som heslo.“

Záver

Napriek istým problémom som s druhým spôsobom viac než spokojný. Mám obsah, ktorý môžem sledovať kedykoľvek chcem.

Youtube-dl je šikovný nástroj a ak ste o jeho existencii nevedeli, pozrite si ho. Premýšľam nad tým, že sa pozriem na to, ako funguje. Možno by som mohol pridať podporu pre zaobchádzanie s cookies alebo pre nejaké iné webstránky.

Aký je váš pohľad na sťahovanie obsahu? Som v tomto na vážkach — na jednej strane, sťahujem obsah, ktorý je verejne dostupný. Na druhej strane, ak sa autori rozhodnú obsah vymazať, je zrazu nelegálne vlastniť jeho kópiu? Myslím si, že je to šedá zóna a takéto videá nikomu neposkytujem.

Dajte mi, prosím, vedieť váš názor do komentára.

Spread the word

Keep reading