Python Selenium Chrome - 如果第一次加载页面需要太长时间,如何刷新页面



如果加载时间超出我的预期,我想刷新页面。所以我计划使用现有的函数 set_page_load_timeout(time_to_wait(,但事实证明调用 driver.get(( 似乎不再有效。

我在下面写了一个简单的程序并遇到了问题。

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
import time

driver = webdriver.Chrome()
time.sleep(5)
driver.set_page_load_timeout(2)
try:
driver.get("https://aws.amazon.com/")
except TimeoutException as e:
print str(e)
driver.set_page_load_timeout(86400)
time.sleep(5)
print "open page"
driver.get("https://aws.amazon.com/")
print "page loaded"


环境信息:
铬=67.0.3396.99

chromedriver=2.40.565386 (45a059dc425e08165f9a10324bd1380cc13ca363(,platform=Mac OS X 10.13.4 x86_64

硒版本:3.12.0

或查看: 环境

您所看到的是get/navigation超时连接不稳定的不幸情况,因此您无法再次在浏览器上运行良好。

目前存在的唯一解决方法是禁用pageLoadStrategy,但随后您失去了许多自动等待 pageLoad 的良好福利getclick操作

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
import time
from selenium.webdriver import DesiredCapabilities
cap = DesiredCapabilities.CHROME
cap["pageLoadStrategy"] = "none"
driver = webdriver.Chrome(desired_capabilities=cap)

最新更新