Jak pobierać filmy z Facebooka za pomocą „youtube-dl” w systemie Linux?

12

Nie mogę pobrać wideo z Facebooka za pomocą youtube-dl. Podczas pobierania występuje następujący błąd:

$ youtube-dl https://www.facebook.com/video.php?v=10152588878600983&set=vb.107925785982&type=2&theater
[1] 5101
[2] 5102
[3] 5103
theater: command not found
[2]-  Done                    set=vb.107925785982
[3]+  Done                    type=2
[2]-  Done                    set=vb.107925785982
[3]+  Done                    type=2
$ [generic] video: Requesting header

$ WARNING: Falling back on generic information extractor.
[generic] video: Downloading webpage
ERROR: Unable to download webpage: <urlopen error [Errno 8] _ssl.c:510: EOF occurred in violation of protocol>

[1]+  Exit 1                  youtube-dl
https://www.facebook.com/video.php?v=10152588878600983
Madhav Nikam
źródło

Odpowiedzi:

10

Podczas używania youtube-dlspróbuj wyczyścić używany adres URL. Na przykład następujący adres URL będzie działał. Dzięki za film ^ _ ~.

Jak zainstalowałeś youtube-dl? Jeśli zainstalowałeś go apt, polecam następujące rzeczy :

sudo apt-get remove youtube-dl
sudo apt-get install $(apt-cache depends youtube-dl | grep Depends | sed "s/.*ends:\ //" | tr '\n' ' ')
sudo pip install youtube-dl

pip wydaje się mieć bardziej aktualną wersję.

Niektóre postacie wymagają ucieczki, aby uniknąć problemów. Możesz pojedynczo zacytować swój adres URL, aby zapobiec tym problemom:

  • youtube-dl 'https://domain.tld/path/file.ext'
EarthmeLon
źródło
mrn @ madhavnikam-Aspire-E5-511: ~ $ youtube-dl facebook.com/video.php?v=10152588878600983 [ogólny] wideo: Żądanie nagłówka OSTRZEŻENIE: Opieranie się na ekstraktorze informacji ogólnych. [ogólne] wideo: Pobieranie strony BŁĄD: Nie można pobrać strony internetowej: <błąd urlopu [Errno 8] _ssl.c: 510: EOF wystąpił z naruszeniem protokołu> mrn @ madhavnikam-Aspire-E5-511: ~ $
Madhav Nikam
to też nie działa.
Madhav Nikam
Nie używasz adresu URL, który ci podałem. Umieść tam HTTPS!
earthmeLon
mrn @ madhavnikam-Aspire-E5-511: ~ $ youtube-dl facebook.com/video.php?v=10152588878600983 [ogólny] wideo: Żądanie nagłówka OSTRZEŻENIE: Opieranie się na ekstraktorze informacji ogólnych. [ogólne] wideo: Pobieranie strony BŁĄD: Nie można pobrać strony internetowej: <błąd urlopu [Errno 8] _ssl.c: 510: EOF wystąpił z naruszeniem protokołu> mrn @ madhavnikam-Aspire-E5-511: ~ $
Madhav Nikam
1
@AjayKumarBasuthkar yes! problem został rozwiązany, a najnowsze aktualizacje youtube-dl są bardzo dobre ... a teraz pojedyncze cytaty też nie są wymagane.
Madhav Nikam
8

Musisz uciec ze znaku ampersands ( &) lub umieścić cały URL w cudzysłowie, ponieważ znak ampersand jest jednym ze znaków specjalnych interpretowanych przez powłokę i uniemożliwia przekazanie całego adresu URL do youtube-dl. Więcej na ten temat . Wystarczy więc umieszczenie go w pojedynczym cudzysłowie:

youtube-dl 'https://www.facebook.com/video.php?v=10152588878600983&set=vb.107925785982&type=2&theater'
dstftw
źródło
$ youtube-dl " facebook.com/... " [generic] video.php? v = 10152588878600983 & set = vb: Żądanie nagłówka OSTRZEŻENIE: Opieranie się na ekstraktorze informacji ogólnych. [generic] video.php? v = 10152588878600983 & set = vb: Pobieranie strony BŁĄD: Nie można pobrać strony: <błąd błędu [Errno 8] _ssl.c: 510: EOF wystąpił z naruszeniem protokołu> $
Madhav Nikam
@MadhavNikam: Edytuj swoje pytanie, jeśli chcesz dodać informacje. Szczególnie wyjściowe plik lub program ofert (z pomocą {}przycisku w pasku narzędzi edytora) są znacznie bardziej czytelne tam i ogólnie to najlepiej mieć wszystko istotne w jednym miejscu. Komentarze mogą być również usuwane z różnych powodów.
David Foerster
1

Próbuję pobrać te wideo za pośrednictwem wine + Youtube-dl i jego działania. W moim przypadku zostałem zainstalowany YouTube-dl przez centrum oprogramowania Ubuntu. Teraz moje centrum oprogramowania nie działa. Dlatego nie mogę zaktualizować YouTube-dl przez Terminal. Zaktualizowana wersja YouTube-dl może rozwiązać ten problem. wino + youtube-dl Krok 1: - Najpierw zainstaluj i skonfiguruj wino.
Krok 2: - pobierz youtube-dl.exe 2016.01.15
krok 3: - skopiuj youtube-dl.exe do /home/youru_username/.wine/drive_c/folder_for_youtube-dl step4: - otwórz cmd.exe z / home / madhavnikam /. wine / drive_c / windows / system32 Uwaga: - youtube-dl to folder, w którym kopiowany jest plik youtube-dl.exe. step5: - wpisz cd \ w cmd i ustaw ścieżkę jak c: \ youtube-dl \ Więcej informacji
wprowadź opis zdjęcia tutaj
wprowadź opis zdjęcia tutaj


wprowadź opis zdjęcia tutaj1) Jak zainstalować Wine w Ubuntu.
2) pobierz wersję exe youtube-dl i skopiuj do folderu C_drive folderu .wine.

Madhav Nikam
źródło
Powyższe rozwiązanie nie jest właściwym rozwiązaniem, ale to rozwiązanie rozwiązuje mój problem. Zaktualizuj Youtube-dl przez Terminal lub centrum oprogramowania Ubuntu. Lepszym rozwiązaniem jest, jeśli twoje centrum oprogramowania działa
Madhav Nikam
@DavidFoerster dzięki. Pamiętam twoje sugestie na przyszłość.
Madhav Nikam
Dla wszystkich innych: youtube-dlmoże być uruchamiany natywnie w Ubuntu / Linux przynajmniej tak samo łatwo. Nie musisz angażować Wine.
David Foerster
@DavidFoerster ta odpowiedź daje inny sposób, jeśli centrum oprogramowania Ubuntu nie działa lub uprawnienia sudo nie są dostępne. Zgadzam się, że youtube-dl jest natywnie uruchamiany w systemie Linux.
Madhav Nikam
Dostępna jest natywna wersja youtube-dl, która nie wymaga uprawnień superużytkownika ani zarządzania pakietami.
David Foerster
1

To zadziałało w mojej Linux Mint 18.3-cinammon, być może może działać w twoim. Możesz pobrać wideo na Facebooku za pomocą youtube-dl, dołączając nazwę użytkownika i hasło Facebooka, jak pokazano poniżej:

youtube-dl <url> --username <YOUR_USERNAME> --password <YOUR_PASSWORD>

Mam nadzieję, że ta pomoc. Dziękuję Ci.

k mak
źródło
Próbowałem, jeśli masz włączoną funkcję 2FA, to nie działa. Próbowałem również z nowym kontem i otrzymałem Cannot Parse Data.
Natim,