aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Garcia <sarbalap+freshmeat@gmail.com>2009-01-31 10:25:59 +0100
committerRicardo Garcia <sarbalap+freshmeat@gmail.com>2010-10-31 11:23:44 +0100
commitc6fd0bb80680d09eca54a3a428a47e3205d0180f (patch)
tree9e86f5398255ed9f4cada5072ba1851af29ff2fb
parent72ac78b8b0d33092ff531077fe5c2ef7f7422df5 (diff)
Add -a (--batch-file) option
-rwxr-xr-xyoutube-dl14
1 files changed, 12 insertions, 2 deletions
diff --git a/youtube-dl b/youtube-dl
index 2aa069c58..1894317b0 100755
--- a/youtube-dl
+++ b/youtube-dl
@@ -889,10 +889,20 @@ if __name__ == '__main__':
action='store_true', dest='ignoreerrors', help='continue on download errors', default=False)
parser.add_option('-r', '--rate-limit',
dest='ratelimit', metavar='L', help='download rate limit (e.g. 50k or 44.6m)')
+ parser.add_option('-a', '--batch-file',
+ dest='batchfile', metavar='F', help='file containing URLs to download')
(opts, args) = parser.parse_args()
+ # Batch file verification
+ if opts.batchfile is not None:
+ try:
+ batchurls = [line.strip() for line in open(opts.batchfile, 'r')]
+ except IOError:
+ sys.exit(u'ERROR: batch file could not be read')
+ all_urls = batchurls + args
+
# Conflicting, missing and erroneous options
- if len(args) < 1:
+ if len(all_urls) < 1:
sys.exit(u'ERROR: you must provide at least one URL')
if opts.usenetrc and (opts.username is not None or opts.password is not None):
sys.exit(u'ERROR: using .netrc conflicts with giving username/password')
@@ -938,7 +948,7 @@ if __name__ == '__main__':
fd.add_info_extractor(youtube_pl_ie)
fd.add_info_extractor(metacafe_ie)
fd.add_info_extractor(youtube_ie)
- retcode = fd.download(args)
+ retcode = fd.download(all_urls)
sys.exit(retcode)
except DownloadError: