小编Jim*_*Lee的帖子

Python Selenium刷新如果等待超过10秒

from selenium import webdriver    
driver=webdriver.Firefox() 
driver.get(url)
Run Code Online (Sandbox Code Playgroud)

有时,网络驱动程序卡在文件或响应上,并且页面从未完全加载,因此该行

driver.get(url) 
Run Code Online (Sandbox Code Playgroud)

永远不会完成。但我已经获得了足够的源代码来运行其余的代码。我想知道如果页面在 10 秒内没有完全加载,我该如何绕过或刷新页面。

我努力了

from selenium import webdriver
from selenium.common.exceptions import TimeoutException    
driver=webdriver.Firefox() 
driver.set_page_load_timeout(10)
while True:
    try:
        driver.get(url)
    except TimeoutException:
        print("Timeout, retrying...")
        continue
    else:
        break
Run Code Online (Sandbox Code Playgroud)

但这条线

driver.set_page_load_timeout(10)
Run Code Online (Sandbox Code Playgroud)

总是给我以下错误

  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/webdriver.py", line 727, in set_page_load_timeout
'pageLoad': int(float(time_to_wait) * 1000)})
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/webdriver.py", line 238, in execute
self.error_handler.check_response(response)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/errorhandler.py", line 193, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: 
Run Code Online (Sandbox Code Playgroud)

Message: 之后就什么都没有了。我无法识别错误的类型。奇怪的是我的笔记本电脑无法运行

driver.set_page_load_timeout(10)
Run Code Online (Sandbox Code Playgroud)

我的下一步是单击页面上的按钮,但即使在完全加载后,该按钮也并不总是存在。因此我不能使用显式等待。

谢谢

python selenium page-refresh

3
推荐指数
1
解决办法
6832
查看次数

标签 统计

page-refresh ×1

python ×1

selenium ×1