@@ -155,7 +155,8 @@ def __init__(self,
155155 debugHTTP = False ,
156156 timeout = None ,
157157 sleep_on_rate_limit = False ,
158- tweet_mode = 'compat' ):
158+ tweet_mode = 'compat' ,
159+ proxies = None ):
159160 """Instantiate a new twitter.Api object.
160161
161162 Args:
@@ -229,6 +230,7 @@ def __init__(self,
229230 self .rate_limit = RateLimit ()
230231 self .sleep_on_rate_limit = sleep_on_rate_limit
231232 self .tweet_mode = tweet_mode
233+ self .proxies = proxies
232234
233235 if base_url is None :
234236 self .base_url = 'https://api.twitter.com/1.1'
@@ -4872,7 +4874,8 @@ def _RequestChunkedUpload(self, url, headers, data):
48724874 headers = headers ,
48734875 data = data ,
48744876 auth = self .__auth ,
4875- timeout = self ._timeout
4877+ timeout = self ._timeout ,
4878+ proxies = self .proxies
48764879 )
48774880 except requests .RequestException as e :
48784881 raise TwitterError (str (e ))
@@ -4909,20 +4912,20 @@ def _RequestUrl(self, url, verb, data=None, json=None):
49094912 if data :
49104913 if 'media_ids' in data :
49114914 url = self ._BuildUrl (url , extra_params = {'media_ids' : data ['media_ids' ]})
4912- resp = requests .post (url , data = data , auth = self .__auth , timeout = self ._timeout )
4915+ resp = requests .post (url , data = data , auth = self .__auth , timeout = self ._timeout , proxies = self . proxies )
49134916 elif 'media' in data :
4914- resp = requests .post (url , files = data , auth = self .__auth , timeout = self ._timeout )
4917+ resp = requests .post (url , files = data , auth = self .__auth , timeout = self ._timeout , proxies = self . proxies )
49154918 else :
4916- resp = requests .post (url , data = data , auth = self .__auth , timeout = self ._timeout )
4919+ resp = requests .post (url , data = data , auth = self .__auth , timeout = self ._timeout , proxies = self . proxies )
49174920 elif json :
4918- resp = requests .post (url , json = json , auth = self .__auth , timeout = self ._timeout )
4921+ resp = requests .post (url , json = json , auth = self .__auth , timeout = self ._timeout , proxies = self . proxies )
49194922 else :
49204923 resp = 0 # POST request, but without data or json
49214924
49224925 elif verb == 'GET' :
49234926 data ['tweet_mode' ] = self .tweet_mode
49244927 url = self ._BuildUrl (url , extra_params = data )
4925- resp = requests .get (url , auth = self .__auth , timeout = self ._timeout )
4928+ resp = requests .get (url , auth = self .__auth , timeout = self ._timeout , proxies = self . proxies )
49264929
49274930 else :
49284931 resp = 0 # if not a POST or GET request
@@ -4954,14 +4957,15 @@ def _RequestStream(self, url, verb, data=None):
49544957 try :
49554958 return requests .post (url , data = data , stream = True ,
49564959 auth = self .__auth ,
4957- timeout = self ._timeout )
4960+ timeout = self ._timeout ,
4961+ proxies = self .proxies )
49584962 except requests .RequestException as e :
49594963 raise TwitterError (str (e ))
49604964 if verb == 'GET' :
49614965 url = self ._BuildUrl (url , extra_params = data )
49624966 try :
49634967 return requests .get (url , stream = True , auth = self .__auth ,
4964- timeout = self ._timeout )
4968+ timeout = self ._timeout , proxies = self . proxies )
49654969 except requests .RequestException as e :
49664970 raise TwitterError (str (e ))
49674971 return 0 # if not a POST or GET request
0 commit comments