about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2017-12-23 20:57:35 +0700
committerSergey M․ <dstftw@gmail.com>2017-12-23 21:17:53 +0700
commit2132edaa03857085821b6a1214ce1410e0c2e463 (patch)
tree7140fddffafeaccd6d1fad0417227e9baa2ef5e2
parent4b7dd1705a7c16c1426ed7ed39e51e275124b4f3 (diff)
downloadyoutube-dl-2132edaa03857085821b6a1214ce1410e0c2e463.tar.gz
youtube-dl-2132edaa03857085821b6a1214ce1410e0c2e463.tar.xz
youtube-dl-2132edaa03857085821b6a1214ce1410e0c2e463.zip
[extractor/common] Move X-Forwarded-For setup code into _request_webpage
-rw-r--r--youtube_dl/extractor/common.py19
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