跳到主要内容

⚙️ 全局设置


有一些运行时的全局设置,可以控制程序某些行为。

✅️️ 使用方式

全局设置在DrissionPage.common路径中。

以赋值的方式对Settings的属性进行设置。

使用方法:

from DrissionPage.common import Settings

Settings.raise_when_wait_failed = True

✅️️ 设置项

📌 raise_when_ele_not_found

设置找不到元素时,是否抛出异常。默认为False


📌 raise_when_click_failed

设置点击失败时,是否抛出异常。默认为False


📌 raise_when_wait_failed

设置等待失败时,是否抛出异常。默认为False


📌 singleton_tab_obj

设置 Tab 对象是否使用单例模式。默认为True


📌 cdp_timeout

cdp 执行超时设置,默认为30


📌 auto_handle_alert

全局的自动处理弹出设置。
None时不自动处理,为bool时自动处理。


📌 suffixes_list_path

用于解析域名后缀的本地文件路径。

默认会连网获取,离线环境下使用内置文件,可对此属性赋值手动指定路径。

通常离线环境下打包使用时需要设置。


✅️️ 示例

此示例设置找不到元素时立刻抛出异常(如不设置返回NoneElement)。

可直接执行查看效果。

from DrissionPage import SessionPage
from DrissionPage.common import Settings

Settings.raise_when_ele_not_found = True

page = SessionPage()
page.get('https://www.baidu.com')
ele = page('#abcd')

输出:

...前面省略...
DrissionPage.errors.ElementNotFoundError:
没有找到元素。
method: ele()
args: {'locator': '#abcd'}