python - 即使我使用了异常处理,Selenium webdriver Python 也会抛出 TimeoutException
问题描述
嗨,我正在测试的页面加载太慢,所以我从 stackoverflow 了解到我们可以为 driver.get() 设置超时
但是在尝试超时时,即使我使用了异常处理,我也会得到 TimeOutException
这是我的代码
from selenium import webdriver
import time
from selenium.common.exceptions import TimeoutException
driver = webdriver.Chrome()
t = time.time()
driver.set_page_load_timeout(20)
try:
driver.get('https://www.slibuy.com/search?upcoming=store&update=all&uptime=all')
except TimeoutException as e:
driver.execute_script("window.stop();")
print("Exception has been thrown. " + str(e))
print('Time consuming:', time.time() - t)
这是错误消息
Traceback (most recent call last):
File "main.py", line 33, in <module>
driver.get('https://www.slibuy.com/search?upcoming=store&update=all&uptime=all')
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 332, in get
self.execute(Command.GET, {'url': url})
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 320, in execute
self.error_handler.check_response(response)
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: timeout
(Session info: chrome=69.0.3497.100)
(Driver info: chromedriver=2.42.591071 (0b695ff80972cc1a65a5cd643186d2ae582cd4ac),platform=Linux 4.15.0-36-generic x86_64)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "main.py", line 35, in <module>
driver.execute_script("window.stop();")
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 635, in execute_script
'args': converted_args})['value']
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 320, in execute
self.error_handler.check_response(response)
File "/home/noobie/anaconda3/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: timeout
(Session info: chrome=69.0.3497.100)
(Driver info: chromedriver=2.42.591071 (0b695ff80972cc1a65a5cd643186d2ae582cd4ac),platform=Linux 4.15.0-36-generic x86_64)
有人可以解释什么是错的吗?
解决方案
推荐阅读
- c++ - 无法将调用成员函数的 lambda 作为 C++11 线程 ctor 参数传递
- javascript - 如何控制滚动距离?
- c# - 如何在 Entity Framework Core cli 工具中使用来自 dotnet 6 最小 API 的配置
- c# - 如何在 .NET 5 的操作过滤器中手动 GZip 压缩 HttpResponse?
- python - 用python在2个变量的函数中拟合1个时间序列
- python - Plotly go.Bar :根据值添加自定义图例标签
- github-api - 我可以从浏览器安全地使用 GitHub GraphQL API 吗?
- ios - 我如何知道何时可以在 iOS 15 上的应用中提供实时文本?
- python-3.x - 如何在熊猫上创建一个空系列?
- python - 如何修复无法打开 Chrome 的 ChromeDriver?