[英]Python Selenium Chrome - How to refresh a page if it takes too long to load the page for the first time
如果加载时间超出我的预期,我想刷新页面。 因此,我计划使用现有功能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),平台= Mac OS X 10.13.4 x86_64
硒版本:3.12.0
或查看: 环境
当get
/ navigation
超时连接不稳定时,您会看到不幸的情况,因此您无法在浏览器上再次正常运行。
到目前为止,唯一存在的解决方法是禁用pageLoadStrategy
,但是随后您失去了很多好处,它们会自动在get
和click
操作上等待pageLoad
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)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.