Wednesday, April 13, 2016

Retry when connection disconnect not working

Leave a Comment

I am using youtube-dl for downloading the videos from YouTube. But in my office the internet will disconnect every 20Mb of download. [Error: Connection forcibly closed by remote server].

I have to type the URL again to resume the download and again it will disconnect after '20Mb' I want youtube-dl to reconnect and retry to download the file.

I tried using --retries switch but it is not retrying once disconnected.

Is there any inbuild method or Work around for this?

2 Answers

Answers 1

DISCLAIMER - HAVE NOT VERIFIED THIS SOLUTION


My best guess would be to specify a cache directory, and use the -c flag to force it to continue downloads if possible.

Source: youtube-dl man page

--cache-dir DIR               Location  in  the  filesystem  where  youtube-dl  can  store  some  downloaded  information  permanently.   By  default               $XDG_CACHE_HOME  /youtube-dl or ~/.cache/youtube-dl .  At the moment, only YouTube player files (for videos with obfus‐               cated signatures) are cached, but that may change.  -c, --continue               Force resume of partially downloaded files.  By default, youtube-dl will resume downloads if possible. 

Answers 2

Get a bash , either via steve's win-bash, the new windows10/Ubuntu thing or cygwin

Call youtube-dl like this:

while ! youtube-dl <video_uri> -c --socket-timeout 5; do echo DISCONNECTED; done 

You may want to add some sleep time between retries.

while ! youtube-dl <video_uri> -c --socket-timeout 5; do echo DISCONNECTED; sleep 5; done 

There should be a power shell equivalent, or an ugly batch while loop checking ERRORLEVEL

If You Enjoyed This, Take 5 Seconds To Share It

0 comments:

Post a Comment