Scroll to navigation

GCAP.1(1p) User Contributed Perl Documentation GCAP.1(1p)

NAME

gcap - Youtube closed caption downloader

SYNOPSIS

gcap [-i] [-t] [-r <regexp>] [--proxy=<addr> | --no-proxy] [--help] <url> | <video_id>

DESCRIPTION

gcap is a command line tool for downloading Youtube closed captions. The downloaded closed captions are saved in SubRip (srt) file format. The srt files are saved as "$videoid_$langid.srt" by default.

OPTIONS

--help
Print help and exit.
--version
Print version and exit.
-q, --quiet
Be quiet.
-i, --interactive
Open the interactive prompt which can be used to select the items. gcap selects all items by default. See also "INTERACTIVE PROMPT".
-t, --title
Parse video title and use it in the output filename(s) instead of video ID. The default is no.
-r, --regexp=arg
Cleanup video title using the specified arg regular expression. The default is "/(\w|\s)/g".
--proxy arg
Use arg for HTTP proxy, e.g. "http://foo:1234". Overrides the http_proxy environment setting.
--no-proxy
Disable use of HTTP proxy. Overrides both "--proxy" and http_proxy environment settings.

INTERACTIVE PROMPT

Use the "--interactive" switch to open the prompt. Note that gcap uses (as of 0.1.0) the Umph::Prompt module for this. Once the prompt opens, type "help" to get a list of commands available to the prompt.

EXAMPLES

gcap 0QRO3gKj3qw
gcap "http://www.youtube.com/watch?v=0QRO3gKj3qw"
Both yield the same results.
gcap -ti 0QRO3gKj3qw
Same as above two but use video title in the filename and choose which of the closed captions should be downloaded.

EXIT STATUS

Exits 0 on success, otherwise 1.

FILES

$HOME/.gcaprc, for example:
echo "--interactive" >> ~/.gcaprc

NOTES

Availability
The following error message produced by gcap (or the XML::DOM module) typically indicates that the video does not have any closed captions available for it (URL omitted for brewity):

  Couldn't parsefile [...] with LWP: no element found at line 1,
  column 0, byte -1 at [...]/XML/Parser.pm [...]
    
http_proxy
gcap depends on XML::DOM which uses LWP::UserAgent to download the data. Note that LWP::UserAgent reads http_proxy environment setting. e.g.:

  env http_proxy=http://foo:1234 gcap video_id
    

WWW

<http://gcap.googlecode.com/>

<http://repo.or.cz/w/gcap.git>

AUTHOR

Toni Gundogdu <legatvs at sign cpan org>
2018-10-04 perl v5.26.2