9

我正在运行一段通过代理下载网站的简单代码,但有时代理可能很慢,这可能导致 WebDriver .get(url) 请求无限期地阻塞。

是否有一段用于 WebDriver 的简单 Python 代码会为此函数设置超时?通过搜索,我只找到了适用于 java 的技术。

driver.get(url)
4

2 回答 2

8

对于那里的所有 Web cretents,我用来解决这个问题的方法就是这个。Selenium 使用套接字库,所以我在套接字模块上设置了超时,这会引发一个错误,我们可以使用该错误将转义键发送到浏览器(这会停止页面加载):

socket.setdefaulttimeout(2)
try:
     driver.get(pageLink)
except socket.timeout:
     #send ESCAPE key to browser
于 2012-12-13T20:01:47.177 回答
4

在文档中找到了这个

selenium.webdriver.remote.webdriver.set_script_timeout(time_to_wait)

Set the amount of time that the script should wait before throwing an error.

time_to_wait: The amount of time to wait

Usage:

driver.set_script_timeout(30)
于 2012-12-13T05:43:11.407 回答