diff options
Diffstat (limited to 'youtube_dl/downloader')
| -rw-r--r-- | youtube_dl/downloader/http.py | 12 | 
1 files changed, 10 insertions, 2 deletions
diff --git a/youtube_dl/downloader/http.py b/youtube_dl/downloader/http.py index f79e6a995..d01d1897e 100644 --- a/youtube_dl/downloader/http.py +++ b/youtube_dl/downloader/http.py @@ -27,8 +27,16 @@ class HttpFD(FileDownloader):              headers['Youtubedl-user-agent'] = info_dict['user_agent']          if 'http_referer' in info_dict:              headers['Referer'] = info_dict['http_referer'] -        basic_request = compat_urllib_request.Request(url, None, headers) -        request = compat_urllib_request.Request(url, None, headers) +        add_headers = info_dict.get('http_headers') +        if add_headers: +            headers.update(add_headers) +        data = info_dict.get('http_post_data') +        http_method = info_dict.get('http_method') +        basic_request = compat_urllib_request.Request(url, data, headers) +        request = compat_urllib_request.Request(url, data, headers) +        if http_method is not None: +            basic_request.get_method = lambda: http_method +            request.get_method = lambda: http_method          is_test = self.params.get('test', False)  | 
