gpt4 book ai didi

firefox - 如何检测 Selenium 何时加载浏览器的错误页面

转载 作者:行者123 更新时间:2023-12-04 12:08:11 25 4
gpt4 key购买 nike

有没有一种通用的方法来检测 selenium 浏览器何时打开错误页面?例如,禁用您的互联网连接并执行

driver.get("http://google.com")

在 Firefox 中,Selenium 将加载“再试一次”错误页面,其中包含“Firefox 无法与 www.google.com 上的服务器建立连接”之类的文本。 Selenium 不会抛出任何错误。

是否有独立于浏览器的方法来检测这些情况?对于 Firefox (python),我可以做
if "errorPageContainer" in [ elem.get_attribute("id") for elem in driver.find_elements_by_css_selector("body > div") ]

但是(1)这似乎是计算过度(见下面的下一点)和(2)我必须为每个浏览器创建自定义代码。

如果您禁用互联网并使用 htmlunit 作为浏览器,您将获得一个包含以下 html 的页面
<html>
<head></head>
<body>Unknown host</body>
</html>

我如何在不做的情况下检测到这一点
if driver.find_element_by_css_selector("body").text == "Unknown host"

由于正文中通常会有大量文本,因此检查每个页面加载似乎非常昂贵。

如果您还知道检测负载问题类型的方法,例如没有 Internet 连接、无法访问的主机等,则可以加分。

最佳答案

WebDriver API doesnot expose HTTP status codes ,所以如果你想检测/管理 HTTP 错误,你应该使用调试代理。

查看 Jim 的精彩帖子 Implementing WebDriver HTTP Status关于如何做到这一点。

关于firefox - 如何检测 Selenium 何时加载浏览器的错误页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22740778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com