首页  >  文章  >  后端开发  >  如何通过加载缓慢的脚本避免 Selenium 中的整页加载等待?

如何通过加载缓慢的脚本避免 Selenium 中的整页加载等待?

Susan Sarandon
Susan Sarandon原创
2024-11-12 18:00:03195浏览

How to Avoid Full Page Load Waits in Selenium with Slow-loading Scripts?

使用加载缓慢的脚本克服 Selenium 中的整页加载等待

Selenium 的默认行为是等到页面完全加载后再继续与执行力。但是,当页面包含加载缓慢的 JavaScript 脚本时,这可能会出现问题。为了避免长时间的等待,配置 Selenium 的 pageLoadStrategy 至关重要。

pageLoadStrategy 参数允许您指定所需的页面加载级别:

  • 正常:整页加载(默认)
  • eager:交互式页面加载(当用户可以与元素交互,但页面可能未完全加载时)
  • none:不等待页面加载(对于动态页面有用)

要限制不必要的等待,请设置pageLoadStrategy 为“渴望”或“无”:

Firefox:

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().FIREFOX
caps["pageLoadStrategy"] = "eager"
driver = webdriver.Firefox(desired_capabilities=caps, executable_path='path/to/geckodriver.exe')

Chrome:

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().CHROME
caps["pageLoadStrategy"] = "eager"
driver = webdriver.Chrome(desired_capabilities=caps, executable_path='path/to/chromedriver.exe')

注意:虽然推荐使用“eager”,但它仍然是正在 ChromeDriver 中开发。详细信息请参阅“Python 中 Chromedriver Selenium 的 Eager”页面加载策略解决方法”中的讨论。

通过配置 pageLoadStrategy,可以防止 Selenium 等待缓慢加载的脚本完成,从而显着提高执行速度您的脚本在不同浏览器实现中的速度。

以上是如何通过加载缓慢的脚本避免 Selenium 中的整页加载等待?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn