20

I am unable to download Facebook video using youtube-dl. The following error occurs during downloading:

$ 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
0

6 Answers 6

18

When using youtube-dl try to clean up the URL you use. For example, the following URL will work. Thanks for the video ^_~.

How did you install youtube-dl? If you installed it through apt, I would recommend the following:

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 seems to have a more up-to-date version.

Some characters need to be escaped to prevent issues. You can single-quote your URL to help prevent these issues:

  • youtube-dl 'https://domain.tld/path/file.ext'
17
  • mrn@madhavnikam-Aspire-E5-511:~$ youtube-dl facebook.com/video.php?v=10152588878600983 [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> mrn@madhavnikam-Aspire-E5-511:~$ May 22, 2015 at 20:33
  • this is also not work. May 22, 2015 at 20:33
  • 1
    You're not using the URL I gave you. Put that HTTPS in there!
    – earthmeLon
    May 22, 2015 at 20:37
  • mrn@madhavnikam-Aspire-E5-511:~$ youtube-dl facebook.com/video.php?v=10152588878600983 [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> mrn@madhavnikam-Aspire-E5-511:~$ May 22, 2015 at 20:41
  • 1
    @AjayKumarBasuthkar yes! problem was solved and youtube-dl latest updates are very good... and now single quotes are not also require. Dec 26, 2018 at 4:06
11

You have to escape ampersands (&) or put the whole URL in quotes since ampersand is one of the special characters that's interpreted by your shell and prevents you from passing the whole URL to youtube-dl. More on this. So just putting it in single quotes will suffice:

youtube-dl 'https://www.facebook.com/video.php?v=10152588878600983&set=vb.107925785982&type=2&theater'
2
  • $ youtube-dl "facebook.com/…" [generic] video.php?v=10152588878600983&set=vb: Requesting header WARNING: Falling back on generic information extractor. [generic] video.php?v=10152588878600983&set=vb: Downloading webpage ERROR: Unable to download webpage: <urlopen error [Errno 8] _ssl.c:510: EOF occurred in violation of protocol> $ May 23, 2015 at 17:26
  • @MadhavNikam: Please edit your question, if you want to add information. Especially file or program output listings (with the help of the {} button in the editor toolbar) are much more readable there and overall it's best to have everything relevant in one place. Also, comments may be deleted for various reasons. May 24, 2015 at 10:00
3
  1. right click on the video > click on "show the video URL" > copy the URL there come (NOT the URL of the facebook page).

  2. Then, paste the URL copied on the terminal next to 'youtube-dl'

    Ex.: youtube-dl https://www.facebook.com/Amhara-Mass-Media-Agency-118697174971952/

3

This worked in my Linux Mint 18.3-cinammon maybe it could work in yours.You can download video in facebook using youtube-dl by appending Facebook username and password as shown below:

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

I hope this help. Thank you.

1
  • 1
    I tried, if you have 2FA enable it doesn't work. I also tried with a new account and I get Cannot Parse Data.
    – Natim
    Jul 20, 2018 at 12:59
1
youtube-dl --username xxxxx --password xxxxx -t -f mp4 'https://www.facebook.com/xxxxx/videos/123456789'
1
  • To make this answer clearer, you need to have a Facebook account and you need to provide your Facebook email address and your Facebook password on the command-line in the places marked with xxxx
    – Flimm
    Jul 4, 2021 at 14:43
0

I try download these video through wine+Youtube-dl and its working. I my case I was install YouTube-dl by Ubuntu software center. Now my software center is not work. Therefore I am unable to Update YouTube-dl through Terminal. Updated version of YouTube-dl may solve that issue. wine+youtube-dl Step1:- first install and configure wine.
Step2:- download youtube-dl.exe 2016.01.15
step3:- copy youtube-dl.exe in to /home/youru_username/.wine/drive_c/folder_for_youtube-dl
enter image description here step4:- open cmd.exe from /home/madhavnikam/.wine/drive_c/windows/system32
enter image description here
Note:- youtube-dl is a folder in which youtube-dl.exe file is copied.
step5:- type cd\ in cmd and set path like c:\youtube-dl\
enter image description here More Info 1)How to install Wine in Ubuntu.
2)youtube-dl exe version download and copy to C_drive folder of .wine folder.

6
  • Above solution is not proper solution but that solution solve my problem. Update your Youtube-dl through Terminal or Ubuntu software center it is better solution if your software center is working Jun 1, 2015 at 4:32
  • @DavidFoerster thanks. I remember your suggestions for future. Jan 3, 2016 at 13:40
  • For everybody else: youtube-dl can be run natively in Ubuntu/Linux at least just as easily. No need to involve Wine. Jan 3, 2016 at 17:07
  • @DavidFoerster this answer just give for another way if Ubuntu software center is no working or sudo privilege is not available. I agree youtube-dl is natively run in Linux. Jan 4, 2016 at 13:14
  • There is a native version of youtube-dl available, that doesn't require super-user privileges or package management. Jan 4, 2016 at 19:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .