如何使用 Selenium 进行硬刷新

Posted

技术标签:

【中文标题】如何使用 Selenium 进行硬刷新【英文标题】:How to hard refresh using Selenium 【发布时间】:2019-07-01 11:20:57 【问题描述】:

我们在 Selenium 中有多种方式,例如 driver.navigate().refresh();driver.execute_script("location.reload()") 进行刷新,但这些方式执行正常刷新。我想硬刷新我的页面,有没有办法使用 Selenium 硬刷新页面。 欢迎使用任何 Java/Python 中的代码。

注意:我不想使用 Robot 类来执行它,所以请提供任何其他方式来执行它。

【问题讨论】:

【参考方案1】:

定期刷新可能会从其缓存中重新加载页面。

刷新从服务器重新加载,而不是从缓存。


如果你也想删除缓存,请使用Cache.delete():

见MDN Web Docs on Cache.delete()。


答案:

您可以将location.reload(true);execute_script 一起使用:

driver.execute_script("location.reload(true);")

从当前 URL 重新加载资源。它的可选唯一参数是一个布尔值,当它为真时,会导致页面总是从服务器重新加载。如果为 false 或未指定,浏览器可能会从其缓存中重新加载页面。

欲了解更多信息,请参阅MDN Web Docs on Location。

希望这会有所帮助!

【讨论】:

以上是关于如何使用 Selenium 进行硬刷新的主要内容,如果未能解决你的问题,请参考以下文章

如何在不硬刷新的情况下升级新的 React 应用程序版本?

如何在 c# 中使用 Selenium 刷新网页?

Selenium-IDE:如何验证/断言页面刷新

如何设置selenium打开网页超过30秒就重新刷新下?

如何设置selenium打开网页超过30秒就重新刷新下?

Selenium:如何使 Web 驱动程序在执行另一个测试之前等待页面刷新