How do I download videos from YouTube with subtitles / captions?

I'd tried by using youtube-dl, with --write-srt --str-lang flags but I always get:

WARNING: video has no closed captions.

  • 1
    Well, does the video have closed captions? I cannot reproduce this issue for videos that have the CC sign available. Which video are you trying to download? Does it work with this one? – slhck Oct 7 '12 at 20:31
  • Yes. Have the CC sign. For video that you have posted it worked fine. But for all that I had tried before it does not work, e.g for this video: youtube.com/watch?v=RHy9_RQbrnQ I get: WARNING: video has no closed captions unlike as you can see into youtube page. ` – Jack Oct 8 '12 at 0:29
  • See exaclty what I have tried: python youtube-dl --write-srt --srt-lang en http://www.youtube.com/watch?v=RHy9_RQbrnQ [youtube] Setting language [youtube] RHy9_RQbrnQ: Downloading video webpage [youtube] RHy9_RQbrnQ: Downloading video info webpage [youtube] RHy9_RQbrnQ: Extracting video information [youtube] RHy9_RQbrnQ: Downloading video subtitles WARNING: video has no closed captions – Jack Oct 8 '12 at 0:31
  • Quite interesting is to check subtitles with --list-subs. – pevik Feb 20 '16 at 12:54
  • 1
    if you're on a LTS distribution, ensure you use an uo-to-date version of youtube-dl, the TLS apt package on ubuntu:14.04 for example, does not work with generated closed captions, but that current pip release version does (sudo pip install -U youtube-dl) – ThorSummoner Apr 24 '16 at 6:43

Make sure the video you're trying to download has actual subtitles uploaded from the owner.

You can then use, for example:

youtube-dl --write-srt --sub-lang en 'http://www.youtube.com/watch?v=RHy9_RQbrnQ'

There is also an option to download the automatically generated subtitle files, using --write-auto-sub.

See the youtube-dl documentation.

  • 2
    Is there no way to download the one translated by youtube? – Jack Oct 27 '13 at 21:11
  • Not that I'm aware of, no. There appear to be some programs for downloading subtitles (like Google2SRT mentioned in the other answers), but those are all for the "real" closed captions. – slhck Oct 27 '13 at 22:01
  • 2
    @Jack: youtube-dl has since added an option "--write-auto-sub" (at least in version 2014.09.22.1). I didn't try it, but that may be what you were looking for. – Tim Landscheidt Nov 11 '14 at 1:11
  • This doesn't work as of August 2015, please fix. – Display name Aug 2 '15 at 8:17
  • 1
    This worked for me just now with youtube-dl version 2015.08.16.1. – Jeff Allen Nov 2 '15 at 6:03

If you want a free, easy-to-use program with a simple GUI, there's Google 2 SRT.

It detects all the available languages and converts to SRT, SSA or SUB.

enter image description here

Not the answer you're looking for? Browse other questions tagged or ask your own question.