diff options
Diffstat (limited to 'youtube_dl/extractor/common.py')
| -rw-r--r-- | youtube_dl/extractor/common.py | 19 | 
1 files changed, 10 insertions, 9 deletions
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py index e5ef5e490..3b79b8cb4 100644 --- a/youtube_dl/extractor/common.py +++ b/youtube_dl/extractor/common.py @@ -495,6 +495,16 @@ class InfoExtractor(object):                  self.to_screen('%s' % (note,))              else:                  self.to_screen('%s: %s' % (video_id, note)) + +        # Some sites check X-Forwarded-For HTTP header in order to figure out +        # the origin of the client behind proxy. This allows bypassing geo +        # restriction by faking this header's value to IP that belongs to some +        # geo unrestricted country. We will do so once we encounter any +        # geo restriction error. +        if self._x_forwarded_for_ip: +            if 'X-Forwarded-For' not in headers: +                headers['X-Forwarded-For'] = self._x_forwarded_for_ip +          if isinstance(url_or_request, compat_urllib_request.Request):              url_or_request = update_Request(                  url_or_request, data=data, headers=headers, query=query) @@ -524,15 +534,6 @@ class InfoExtractor(object):          if isinstance(url_or_request, (compat_str, str)):              url_or_request = url_or_request.partition('#')[0] -        # Some sites check X-Forwarded-For HTTP header in order to figure out -        # the origin of the client behind proxy. This allows bypassing geo -        # restriction by faking this header's value to IP that belongs to some -        # geo unrestricted country. We will do so once we encounter any -        # geo restriction error. -        if self._x_forwarded_for_ip: -            if 'X-Forwarded-For' not in headers: -                headers['X-Forwarded-For'] = self._x_forwarded_for_ip -          urlh = self._request_webpage(url_or_request, video_id, note, errnote, fatal, data=data, headers=headers, query=query)          if urlh is False:              assert not fatal  | 
