5656
5757import requests
5858
59- import PyFunceble .factory
59+ import PyFunceble .storage
6060from PyFunceble .checker .availability .status import AvailabilityCheckerStatus
6161from PyFunceble .helpers .regex import RegexHelper
6262from PyFunceble .query .dns .query_tool import DNSQueryTool
63+ from PyFunceble .query .requests .requester import Requester
6364
6465
6566class ExtraRuleHandlerBase :
@@ -76,13 +77,14 @@ class ExtraRuleHandlerBase:
7677 req : Optional [requests .Response ] = None
7778 dns_query_tool : Optional [DNSQueryTool ] = None
7879 regex_helper : Optional [RegexHelper ] = None
80+ requester : Optional [Requester ] = None
7981
8082 def __init__ (self , status : Optional [AvailabilityCheckerStatus ] = None ) -> None :
8183 if status is not None :
8284 self .status = status
8385
84- # Be sure that all settings are loaded proprely!!
85- PyFunceble . factory . Requester . guess_all_settings ()
86+ self . requester = Requester ( config = PyFunceble . storage . CONFIGURATION )
87+
8688 self .dns_query_tool = DNSQueryTool ()
8789 self .regex_helper = RegexHelper ()
8890
@@ -227,9 +229,7 @@ def do_request(self, *, allow_redirects: bool = True) -> requests.Response:
227229 Whether we shoold follow the redirection - or not.
228230 """
229231
230- self .req = PyFunceble .factory .Requester .get (
231- self .req_url , allow_redirects = allow_redirects
232- )
232+ self .req = self .requester .get (self .req_url , allow_redirects = allow_redirects )
233233
234234 return self
235235
@@ -272,18 +272,18 @@ def handle_string_match_mode(_req: requests.Response):
272272 method ()
273273
274274 try :
275- req = PyFunceble . factory . Requester .get (url , allow_redirects = allow_redirects )
275+ req = self . requester .get (url , allow_redirects = allow_redirects )
276276
277277 if match_mode == "regex" :
278278 handle_regex_match_mode (req )
279279 else :
280280 handle_string_match_mode (req )
281281 except (
282- PyFunceble . factory . Requester .exceptions .RequestException ,
283- PyFunceble . factory . Requester .exceptions .InvalidURL ,
284- PyFunceble . factory . Requester .exceptions .Timeout ,
285- PyFunceble . factory . Requester .exceptions .ConnectionError ,
286- PyFunceble . factory . Requester .urllib3_exceptions .InvalidHeader ,
282+ self . requester .exceptions .RequestException ,
283+ self . requester .exceptions .InvalidURL ,
284+ self . requester .exceptions .Timeout ,
285+ self . requester .exceptions .ConnectionError ,
286+ self . requester .urllib3_exceptions .InvalidHeader ,
287287 socket .timeout ,
288288 ):
289289 pass
@@ -363,18 +363,18 @@ def handle_string_match_mode(_req: requests.Response):
363363 method ()
364364
365365 try :
366- req = PyFunceble . factory . Requester .get (url , allow_redirects = allow_redirects )
366+ req = self . requester .get (url , allow_redirects = allow_redirects )
367367
368368 if match_mode == "regex" :
369369 handle_regex_match_mode (req )
370370 else :
371371 handle_string_match_mode (req )
372372 except (
373- PyFunceble . factory . Requester .exceptions .RequestException ,
374- PyFunceble . factory . Requester .exceptions .InvalidURL ,
375- PyFunceble . factory . Requester .exceptions .Timeout ,
376- PyFunceble . factory . Requester .exceptions .ConnectionError ,
377- PyFunceble . factory . Requester .urllib3_exceptions .InvalidHeader ,
373+ self . requester .exceptions .RequestException ,
374+ self . requester .exceptions .InvalidURL ,
375+ self . requester .exceptions .Timeout ,
376+ self . requester .exceptions .ConnectionError ,
377+ self . requester .urllib3_exceptions .InvalidHeader ,
378378 socket .timeout ,
379379 ):
380380 pass
0 commit comments