From: Philipp Hagemeister Date: Tue, 30 Apr 2013 15:57:13 +0000 (+0200) Subject: --proxy option X-Git-Url: http://git.bitcoin.ninja/?a=commitdiff_plain;h=5fb16555afcde763842b5a5ab8845ee1173d7a65;p=youtube-dl --proxy option --- diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index fcce891bc..a56da8e3d 100644 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -146,6 +146,7 @@ def parseOpts(overrideArguments=None): general.add_option('--list-extractors', action='store_true', dest='list_extractors', help='List all supported extractors and the URLs they would handle', default=False) + general.add_option('--proxy', dest='proxy', default=None, help='Use the specified HTTP/HTTPS proxy') general.add_option('--test', action='store_true', dest='test', default=False, help=optparse.SUPPRESS_HELP) selection.add_option('--playlist-start', @@ -376,10 +377,13 @@ def _real_main(argv=None): # General configuration cookie_processor = compat_urllib_request.HTTPCookieProcessor(jar) - proxies = compat_urllib_request.getproxies() - # Set HTTPS proxy to HTTP one if given (https://github.com/rg3/youtube-dl/issues/805) - if 'http' in proxies and 'https' not in proxies: - proxies['https'] = proxies['http'] + if opts.proxy: + proxies = {'http': opts.proxy, 'https': opts.proxy} + else: + proxies = compat_urllib_request.getproxies() + # Set HTTPS proxy to HTTP one if given (https://github.com/rg3/youtube-dl/issues/805) + if 'http' in proxies and 'https' not in proxies: + proxies['https'] = proxies['http'] proxy_handler = compat_urllib_request.ProxyHandler(proxies) opener = compat_urllib_request.build_opener(proxy_handler, cookie_processor, YoutubeDLHandler()) compat_urllib_request.install_opener(opener)