@@ -106,24 +106,9 @@ def request_with_backoff(
106106
107107 Return and exceptions are the same as function request()."""
108108 backoff = _BackoffTimer ()
109-
110- try :
111- headers .setdefault (
112- "User-Agent" ,
113- _generate_user_agent (
114- user_agent ,
115- self ._send_platform_info ,
116- self ._app_info_name ,
117- self ._app_info_version ,
118- ),
119- )
120- request = requests .Request (
121- method , url , data = data , json = json , headers = headers , ** kwargs
122- ).prepare ()
123- except Exception as e :
124- raise DeepLException (
125- f"Error occurred while preparing request: { e } "
126- ) from e
109+ request = self ._prepare_request (
110+ method , url , data , json , headers , ** kwargs
111+ )
127112
128113 while True :
129114 response : Optional [Tuple [int , Union [str , requests .Response ]]]
@@ -173,23 +158,9 @@ def request(
173158
174159 If no response is received will raise ConnectionException."""
175160
176- try :
177- headers .setdefault (
178- "User-Agent" ,
179- _generate_user_agent (
180- user_agent ,
181- self ._send_platform_info ,
182- self ._app_info_name ,
183- self ._app_info_version ,
184- ),
185- )
186- request = requests .Request (
187- method , url , data = data , json = json , headers = headers , ** kwargs
188- ).prepare ()
189- except Exception as e :
190- raise DeepLException (
191- f"Error occurred while preparing request: { e } "
192- ) from e
161+ request = self ._prepare_request (
162+ method , url , data , json , headers , ** kwargs
163+ )
193164 return self ._internal_request (request , stream , stream = stream )
194165
195166 def _internal_request (
@@ -238,6 +209,33 @@ def _should_retry(self, response, exception, num_retries):
238209 status_code >= http .HTTPStatus .INTERNAL_SERVER_ERROR
239210 )
240211
212+ def _prepare_request (
213+ self ,
214+ method : str ,
215+ url : str ,
216+ data : Optional [dict ],
217+ json : Optional [dict ],
218+ headers : dict ,
219+ ** kwargs ,
220+ ) -> requests .PreparedRequest :
221+ try :
222+ headers .setdefault (
223+ "User-Agent" ,
224+ _generate_user_agent (
225+ user_agent ,
226+ self ._send_platform_info ,
227+ self ._app_info_name ,
228+ self ._app_info_version ,
229+ ),
230+ )
231+ return requests .Request (
232+ method , url , data = data , json = json , headers = headers , ** kwargs
233+ ).prepare ()
234+ except Exception as e :
235+ raise DeepLException (
236+ f"Error occurred while preparing request: { e } "
237+ ) from e
238+
241239
242240@lru_cache (maxsize = 4 )
243241def _generate_user_agent (
0 commit comments