From 37bf43ac3650960ec12645afb5ea5cafba71807f Mon Sep 17 00:00:00 2001 From: g1879 Date: Tue, 1 Sep 2020 23:27:11 +0800 Subject: [PATCH] =?UTF-8?q?get()=E5=A2=9E=E5=8A=A0=E9=87=8D=E8=AF=95?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DrissionPage/driver_page.py | 4 ++-- DrissionPage/mix_page.py | 20 +++++++++++++++++++- DrissionPage/session_page.py | 2 +- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/DrissionPage/driver_page.py b/DrissionPage/driver_page.py index 4be52e0..21693f5 100644 --- a/DrissionPage/driver_page.py +++ b/DrissionPage/driver_page.py @@ -65,12 +65,12 @@ class DriverPage(object): times: int = 0, interval: float = 1, show_errmsg: bool = False, ): - """ + """尝试连接,重试若干次 \n :param to_url: 要访问的url :param times: 重试次数 :param interval: 重试间隔(秒) :param show_errmsg: 是否抛出异常 - :return: + :return: 是否成功 """ self.driver.get(to_url) is_ok = self.check_page() diff --git a/DrissionPage/mix_page.py b/DrissionPage/mix_page.py index 3153b56..9a30870 100644 --- a/DrissionPage/mix_page.py +++ b/DrissionPage/mix_page.py @@ -235,12 +235,30 @@ class MixPage(Null, SessionPage, DriverPage): return super().chrome_downloading(path) # ----------------以下为共用函数----------------------- + def _try_to_get(self, + to_url: str, + times: int = 0, + interval: float = 1, + show_errmsg: bool = False, + **kwargs): + """尝试连接,重试若干次 \n + :param to_url: 要访问的url + :param times: 重试次数 + :param interval: 重试间隔(秒) + :param show_errmsg: 是否抛出异常 + :param kwargs: 连接参数 + :return: s模式为HTMLResponse对象,d模式为bool + """ + if self._mode == 'd': + return super(SessionPage, self)._try_to_get(to_url, times, interval, show_errmsg) + elif self._mode == 's': + return super()._try_to_get(to_url, times, interval, show_errmsg, **kwargs) def get(self, url: str, go_anyway=False, show_errmsg: bool = False, - retry: int = 0, + retry: int = 2, interval: float = 1, **kwargs) -> Union[bool, None]: """跳转到一个url \n diff --git a/DrissionPage/session_page.py b/DrissionPage/session_page.py index 1002f7c..553474e 100644 --- a/DrissionPage/session_page.py +++ b/DrissionPage/session_page.py @@ -148,7 +148,7 @@ class SessionPage(object): interval: float = 1, show_errmsg: bool = False, **kwargs) -> HTMLResponse: - """尝试连接,重试若干次 + """尝试连接,重试若干次 \n :param to_url: 要访问的url :param times: 重试次数 :param interval: 重试间隔(秒)