问题标签 [pageloadtimeout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
21679 浏览

java - Selenium 中的 pageLoadTimeout 不起作用

我在 Java 中使用 selenium 使用下面的代码。我添加了 4 秒的 pageLoadTimeout,但是,驱动程序继续等待直到加载完整的页面。有什么帮助吗?

0 投票
1 回答
25605 浏览

python - 如何为 python selenium 3.8.0 设置'driver.get'的超时?

在硒测试中,您使用

如何为 selenium 版本3.8.0和 python 2.7.12 设置此命令的超时?

0 投票
1 回答
2927 浏览

python - Selenium .set_script_timeout(n) 有什么作用,它与 driver.set_page_load_timeout(n) 有何不同?

在 python selenium 的上下文中,我不太了解driver.set_page_load_timeout(n)VS的确切区别。driver.set_script_timeout(n). 两者似乎都可以互换使用来设置超时以通过 加载 URL driver.get(URL),但有时也可以一起使用。

方案 1

方案 2

这两种情况有何不同?哪些情况会在一种情况下触发超时,而在另一种情况下不会?

0 投票
2 回答
1513 浏览

selenium - pageLoadTimeout 在 Selenium 中不起作用 - Java

我正在 linux 主机中测试一个网站。我正在访问的页面无限加载,所以我试图为 selenium 设置 pageLoadTimeout。Firefox 被正确触发,但 URL 没有加载/导航/添加到 url 栏中。只是空白的 Firefox 窗口。我也没有看到任何错误。

但是,如果我删除driver.manage().timeouts().pageLoadTimeout(2, TimeUnit.SECONDS);代码工作正常

硒版本:3.14.0;

gecko 驱动程序:18 - linux(用 gecko 16,17 测试也是同样的问题)

浏览器:firefox-52

操作系统/平台:Linux

如果出现这种问题,我如何确保我的驱动程序在 5 分钟后自行退出。主机将仅支持 firefox 52。

我检查了这个链接,但没有解决我的问题。

谢谢Jk

0 投票
1 回答
748 浏览

python-2.7 - 如何通过 Selenium 和 Python 检索页面加载超时

Python + Selenium 中是否有任何方法可以检索 webdriver 的当前页面加载超时?

我知道使用set_page_load_timeout()和检查 Chromedriver 日志表明这修改了它的内部状态,所以我想知道是否有办法查询它?

或者,我将简单地将值保存在我这边的代码中。检索将有助于验证超时是否已成功设置,然后它仍然是相同的。

0 投票
2 回答
2145 浏览

linux - 在超时错误后使 Selenium 继续

我有一个返回网站列表标题的代码。有时,一个网站的加载时间太长了,所以当这种情况发生时,会提示超时错误。我想让它在发生这样的错误时,程序继续运行而不是完全停止。

代码是:

以下代码是在 60 秒后页面未加载时发生超时的原因:

当 60 秒过去时,程序停止并提示超时错误。我希望它继续使用下一个 url。

0 投票
1 回答
1196 浏览

selenium - 等到元素可点击未正确超时

我在处理超时时遇到了一些问题,因为它似乎并非在所有情况下都有效。我已将超时定义如下:

现在,当我想等到页面上出现一个元素时,我使用这段代码:

它适用于大多数情况(等待元素并在 60 秒后超时),但最近我们遇到了一些页面卡住加载的问题(在左下角有一条消息等待 ...页)。发生这种情况时,我意识到这段代码不能正常工作。它不会在 60 秒后超时,而是在 10 分钟后超时。

编辑:实际上,试图进一步调查我的问题,我意识到它确实来自另一行也包含等待的代码:

基本上,我单击重定向到另一个页面的链接,等待按钮出现,等待按钮可点击,然后单击按钮。所以它检测到按钮存在,但它会等待它是可点击的,并且在 60 秒后不会超时。

所以当我定义我的驱动程序时,我添加了以下行:

在控制台中,我看到以下行: Timed out received message from renderer: 60.000

但是我如何捕捉到这个异常呢?我试图用 try/catch 来包围我的等待,但它不起作用。

我该怎么做?谢谢。

0 投票
3 回答
1009 浏览

java - 如果加载时间过长,如何使 selenium 重新加载所需的 url

如果加载过程花费太长时间,我希望 selenium 强制浏览器重新加载它正在加载的页面。

从 StackOverflow 我有这个代码

将等到页面完全加载,但如果需要超过 30 秒,我希望重新加载它。

我怎样才能做到这一点?

0 投票
1 回答
713 浏览

java - 无法从 pageLoadTimeout 捕获 TimeOutException 并使用 selenium Java FireFox 驱动程序刷新页面

我遇到了 Selenium Firefox 驱动程序的问题,有时某种谷歌广告会卡住加载。我只需单击刷新按钮即可完成此操作,页面将完全加载,我可以读取所需的数据并移至下一页。如果我不手动单击刷新,它最终会以默认超时时间超时,但这需要几分钟。

这当然不理想,我希望我能自动处理这种情况。

我尝试手动更改超时时间并添加一个 Try Catch 块,如下所示

错误是:

它突出了这条线

导致错误。

0 投票
1 回答
1362 浏览

python - 如果页面在 selenium python 中加载时间过长,如何停止测试

我正在测试一个网站,一切都很好,除非页面花费了太多时间,然后 selenium 继续搜索元素。我试过使用driver.set_page_load_timeout(5),但仍然永远加载。
这是代码: