DriverPage增加set_ua_to_tab()方法

This commit is contained in:
g1879 2022-01-26 14:03:11 +08:00
parent c2dba9db61
commit 5053e0d879
3 changed files with 11 additions and 1 deletions

View File

@ -385,6 +385,13 @@ class DriverPage(BasePage):
tab = self.driver.window_handles[tab] if isinstance(tab, int) else tab
self.driver.switch_to.window(tab)
def set_ua_to_tab(self, ua: str) -> None:
"""为当前tab设置user agent只在当前tab有效 \n
:param ua: user agent字符串
:return: None
"""
self.driver.execute_cdp_cmd("Network.setUserAgentOverride", {"userAgent": ua})
def screenshot(self, path: str, filename: str = None) -> str:
"""截取页面可见范围截图 \n
:param path: 保存路径

View File

@ -37,7 +37,7 @@ class MixPage(SessionPage, DriverPage, BasePage):
session_options: Union[dict, SessionOptions, bool] = None) -> None:
"""初始化函数 \n
:param mode: 'd' 's'即driver模式和session模式
:param drission: Drission对象不传入时会自动创建
:param drission: Drission对象不传入时会自动创建有传入时driver_options和session_options参数无效
:param timeout: 超时时间d模式时为寻找元素时间s模式时为连接时间默认10秒
:param driver_options: 浏览器设置没传入drission参数时会用这个设置新建Drission对象中的WebDriver对象传入False则不创建
:param session_options: requests设置没传入drission参数时会用这个设置新建Drission对象中的Session对象传入False则不创建

View File

@ -16,6 +16,9 @@
- driver_options浏览器设置没传入`drission`参数时会用这个设置新建`Drission`对象中的`WebDriver`对象,传入`False`则不创建
- session_optionsrequests 设置,没传入`drission`参数时会用这个设置新建`Drission`对象中的`Session`对象,传入`False`则不创建
!> **注意:** <br>
有传入`drission`参数时,`driver_options``session_options`参数无效
# 直接创建
这种方式代码最简洁,程序会从配置文件中读取配置,自动生成页面对象。可以保持代码简洁。