微调无修改

This commit is contained in:
g1879 2020-11-07 15:47:08 +08:00
parent e439c1f679
commit 800d56adf2
2 changed files with 9 additions and 9 deletions

View File

@ -57,7 +57,7 @@ class Drission(object):
@property @property
def session(self) -> Session: def session(self) -> Session:
"""返回HTMLSession对象如为None则按配置信息创建""" """返回Session对象如为None则按配置信息创建"""
if self._session is None: if self._session is None:
self._session = Session() self._session = Session()
attrs = ['headers', 'cookies', 'auth', 'proxies', 'hooks', 'params', 'verify', attrs = ['headers', 'cookies', 'auth', 'proxies', 'hooks', 'params', 'verify',

View File

@ -26,7 +26,7 @@ class Null(object):
class MixPage(Null, SessionPage, DriverPage): class MixPage(Null, SessionPage, DriverPage):
"""MixPage整合了DriverPage和SessionPage """MixPage整合了DriverPage和SessionPage封装了对页面的操作,
可在seleniumd模式和requestss模式间无缝切换 可在seleniumd模式和requestss模式间无缝切换
切换的时候会自动同步cookies 切换的时候会自动同步cookies
获取信息功能为两种模式共有操作页面元素功能只有d模式有 获取信息功能为两种模式共有操作页面元素功能只有d模式有
@ -49,18 +49,20 @@ class MixPage(Null, SessionPage, DriverPage):
if drission in ['s', 'd', 'S', 'D']: if drission in ['s', 'd', 'S', 'D']:
mode = drission.lower() mode = drission.lower()
drission = None drission = None
self._drission = drission or Drission(driver_options, session_options) self._drission = drission or Drission(driver_options, session_options)
self._session = None
self._driver = None
self._url = None self._url = None
self._response = None self._response = None
self.timeout = timeout self.timeout = timeout
self._url_available = None self._url_available = None
self._mode = mode self._mode = mode
if mode == 's': if mode == 's':
self._driver = None
self._session = True self._session = True
elif mode == 'd': elif mode == 'd':
self._driver = True self._driver = True
self._session = None
else: else:
raise ValueError("Argument mode can only be 'd' or 's'.") raise ValueError("Argument mode can only be 'd' or 's'.")
@ -79,9 +81,7 @@ class MixPage(Null, SessionPage, DriverPage):
@property @property
def mode(self) -> str: def mode(self) -> str:
"""返回当前模式,'s''d' \n """返回当前模式,'s''d' """
:return: 's' 'd'
"""
return self._mode return self._mode
def change_mode(self, mode: str = None, go: bool = True) -> None: def change_mode(self, mode: str = None, go: bool = True) -> None:
@ -131,7 +131,7 @@ class MixPage(Null, SessionPage, DriverPage):
@property @property
def session(self) -> Session: def session(self) -> Session:
"""返回session对象如没有则创建 \n """返回session对象如没有则创建 \n
:return: HTMLSession对象 :return: Session对象
""" """
return self._drission.session return self._drission.session
@ -252,7 +252,7 @@ class MixPage(Null, SessionPage, DriverPage):
:param interval: 重试间隔 :param interval: 重试间隔
:param show_errmsg: 是否抛出异常 :param show_errmsg: 是否抛出异常
:param kwargs: 连接参数 :param kwargs: 连接参数
:return: s模式为HTMLResponse对象d模式为bool :return: s模式为Response对象d模式为bool
""" """
if self._mode == 'd': if self._mode == 'd':
return super(SessionPage, self)._try_to_get(to_url, times, interval, show_errmsg) return super(SessionPage, self)._try_to_get(to_url, times, interval, show_errmsg)