Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

gcap(1p) [debian man page]

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

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_$" 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 "" 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/ [...] 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
<> <> AUTHOR
Toni Gundogdu <legatvs at sign cpan org> perl v5.12.4 2011-11-15 GCAP.1(1p)

Check Out this Related Man Page

XML::DOM::Parser(3pm)					User Contributed Perl Documentation				     XML::DOM::Parser(3pm)

XML::DOM::Parser - An XML::Parser that builds XML::DOM document structures SYNOPSIS
use XML::DOM; my $parser = new XML::DOM::Parser; my $doc = $parser->parsefile ("file.xml"); $doc->dispose; # Avoid memory leaks - cleanup circular references DESCRIPTION
XML::DOM::Parser extends XML::Parser The XML::Parser module was written by Clark Cooper and is built on top of XML::Parser::Expat, which is a lower level interface to James Clark's expat library. XML::DOM::Parser parses XML strings or files and builds a data structure that conforms to the API of the Document Object Model as described at <>. See the XML::Parser manpage for other additional properties of the XML::DOM::Parser class. Note that the 'Style' property should not be used (it is set internally.) The XML::Parser NoExpand option is more or less supported, in that it will generate EntityReference objects whenever an entity reference is encountered in character data. I'm not sure how useful this is. Any comments are welcome. As described in the synopsis, when you create an XML::DOM::Parser object, the parse and parsefile methods create an XML::DOM::Document object from the specified input. This Document object can then be examined, modified and written back out to a file or converted to a string. When using XML::DOM with XML::Parser version 2.19 and up, setting the XML::DOM::Parser option KeepCDATA to 1 will store CDATASections in CDATASection nodes, instead of converting them to Text nodes. Subsequent CDATASection nodes will be merged into one. Let me know if this is a problem. Using LWP to parse URLs The parsefile() method now also supports URLs, e.g. It uses LWP to download the file and then calls parse() on the resulting string. By default it will use a LWP::UserAgent that is created as follows: use LWP::UserAgent; $LWP_USER_AGENT = LWP::UserAgent->new; $LWP_USER_AGENT->env_proxy; Note that env_proxy reads proxy settings from environment variables, which is what I need to do to get thru our firewall. If you want to use a different LWP::UserAgent, you can either set it globally with: XML::DOM::Parser::set_LWP_UserAgent ($my_agent); or, you can specify it for a specific XML::DOM::Parser by passing it to the constructor: my $parser = new XML::DOM::Parser (LWP_UserAgent => $my_agent); Currently, LWP is used when the filename (passed to parsefile) starts with one of the following URL schemes: http, https, ftp, wais, gopher, or file (followed by a colon.) If I missed one, please let me know. The LWP modules are part of libwww-perl which is available at CPAN. perl v5.8.8 2008-02-03 XML::DOM::Parser(3pm)
Man Page