From 1cc85db69bda594d2a0ec4c991f6c9fa27d4d92e Mon Sep 17 00:00:00 2001 From: g1879 Date: Tue, 14 Sep 2021 22:24:03 +0800 Subject: [PATCH] =?UTF-8?q?MixPge=E5=88=9D=E5=A7=8B=E5=8C=96=E5=8F=82?= =?UTF-8?q?=E6=95=B0mode=E5=92=8Cdrission=E4=BD=8D=E7=BD=AE=E4=BA=92?= =?UTF-8?q?=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DrissionPage/mix_page.py | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/DrissionPage/mix_page.py b/DrissionPage/mix_page.py index 6d83331..39ae39b 100644 --- a/DrissionPage/mix_page.py +++ b/DrissionPage/mix_page.py @@ -29,33 +29,21 @@ class MixPage(SessionPage, DriverPage, BasePage): """ def __init__(self, - drission: Union[Drission, str] = None, mode: str = 'd', + drission: Union[Drission, str] = None, timeout: float = 10, driver_options: Union[dict, DriverOptions] = None, session_options: Union[dict, SessionOptions] = None): """初始化函数 \n - :param drission: Drission对象,传入's'或'd'可自动创建Drission对象 :param mode: 'd' 或 's',即driver模式和session模式 + :param drission: Drission对象,不传入时会自动创建 + :param timeout: 超时时间,d模式时为寻找元素时间,s模式时为连接时间 :param driver_options: 浏览器设置,没有传入drission参数时会用这个设置新建Drission对象 :param session_options: requests设置,没有传入drission参数时会用这个设置新建Drission对象 """ super().__init__(timeout) # BasePage的__init__() - if isinstance(drission, str): - self._mode = drission.lower() - drission = None - else: - self._mode = mode - - if self._mode == 's': - self._driver = None - self._session = True - elif self._mode == 'd': - self._driver = True - self._session = None - else: - raise ValueError("Argument mode can only be 'd' or 's'.") - + self._mode = mode.lower() + self._driver, self._session = (None, True) if self._mode == 's' else (True, None) self._drission = drission or Drission(driver_options, session_options) def __call__(self,