diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2014-03-24 10:42:58 +0100 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2014-03-24 10:42:58 +0100 |
commit | 72546c831e460307570ae292053c8395e2bbf0ef (patch) | |
tree | f4426ffa877c85564acf56c367dd4b4d771b4df4 /youtube_dl | |
parent | d26db9269daf35ab1ab0cfe35bfffd49af834343 (diff) | |
parent | 410afb2003f48df92720da7d4ea37560692138a4 (diff) |
Merge pull request #2553 from anisse/master
Add an option to specify custom HTTP headers
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/__init__.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index a4cbdb0bd..056e94457 100644 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -227,6 +227,9 @@ def parseOpts(overrideArguments=None): general.add_option('--referer', dest='referer', help='specify a custom referer, use if the video access is restricted to one domain', metavar='REF', default=None) + general.add_option('--add-header', + dest='headers', help='specify a custom HTTP header and its value, separated by a colon \':\'. You can use this option multiple times', action="append", + metavar='FIELD:VALUE') general.add_option('--list-extractors', action='store_true', dest='list_extractors', help='List all supported extractors and the URLs they would handle', default=False) @@ -556,6 +559,16 @@ def _real_main(argv=None): if opts.referer is not None: std_headers['Referer'] = opts.referer + # Custom HTTP headers + if opts.headers is not None: + for h in opts.headers: + if h.find(':', 1) < 0: + parser.error(u'wrong header formatting, it should be key:value, not "%s"'%h) + key, value = h.split(':', 2) + if opts.verbose: + write_string(u'[debug] Adding header from command line option %s:%s\n'%(key, value)) + std_headers[key] = value + # Dump user agent if opts.dump_user_agent: compat_print(std_headers['User-Agent']) |