有没有办法防止 selenium 自动终止空闲会话?
Is there a way too prevent selenium automatically terminating idle sessions?
我正在使用 selenium 来自动执行与网站的某些交互。此过程涉及打开多个浏览器并让它们间歇性地执行操作。然而,偶尔会有长时间(> 1 小时)的无操作,selenium 似乎会在大约 30 分钟未被调用后自动终止浏览器会话。
我想将此超时设置为 7 小时左右,但找不到任何方法。
这是 selenium 在帮助关闭空闲浏览器时发送的消息。
13:06:35.277 INFO [ActiveSessions.onStop] - Removing session 70a1b8cbae6876cde7e66df13b3942d1 (org.openqa.selenium.chrome.ChromeDriverService)
如果有人有任何线索,我将不胜感激。目前我只是每 15 分钟自动刷新一次浏览器以防止超时,但感觉很恶心。
这个错误信息...
INFO [ActiveSessions.onStop] - Removing session 70a1b8cbae6876cde7e66df13b3942d1 (org.openqa.selenium.chrome.ChromeDriverService)
...意味着已经 initiated/spawned 一个新的 Chrome 浏览器会话 已终止。
使用 Selenium Grid Hub/Node 配置 and/or RemoteWebdriver 实现时会出现此问题。
如果您观察 selenium-server-standalone-x.y.z.jar
的 -help
,则 默认 -timeout
/ -sessionTimeout
设置为 1800秒。
CLI 命令:
$>java -jar selenium-server-standalone-3.14.0.jar -help
输出:
-timeout
, -sessionTimeout
: <Integer>
in seconds : Specifies the timeout before the server automatically kills a session that hasn't had any activity in the last X seconds. The test slot will then be released for another test to use. This is typically used to take care of client crashes. For grid hub/node roles, cleanUpCycle must also be set.
默认值:1800
快照:
因此,您会看到超时,并且 selenium 在大约 30 分钟未被调用后自动终止浏览器会话。
解决方案
您可以增加 -timeout
/ -sessionTimeout
如下:
$>java -jar /path/to/selenium-server-standalone-3.14.0.jar -sessionTimeout 57868143
我正在使用 selenium 来自动执行与网站的某些交互。此过程涉及打开多个浏览器并让它们间歇性地执行操作。然而,偶尔会有长时间(> 1 小时)的无操作,selenium 似乎会在大约 30 分钟未被调用后自动终止浏览器会话。
我想将此超时设置为 7 小时左右,但找不到任何方法。
这是 selenium 在帮助关闭空闲浏览器时发送的消息。
13:06:35.277 INFO [ActiveSessions.onStop] - Removing session 70a1b8cbae6876cde7e66df13b3942d1 (org.openqa.selenium.chrome.ChromeDriverService)
如果有人有任何线索,我将不胜感激。目前我只是每 15 分钟自动刷新一次浏览器以防止超时,但感觉很恶心。
这个错误信息...
INFO [ActiveSessions.onStop] - Removing session 70a1b8cbae6876cde7e66df13b3942d1 (org.openqa.selenium.chrome.ChromeDriverService)
...意味着已经 initiated/spawned 一个新的 Chrome 浏览器会话 已终止。
使用 Selenium Grid Hub/Node 配置 and/or RemoteWebdriver 实现时会出现此问题。
如果您观察 selenium-server-standalone-x.y.z.jar
的 -help
,则 默认 -timeout
/ -sessionTimeout
设置为 1800秒。
CLI 命令:
$>java -jar selenium-server-standalone-3.14.0.jar -help
输出:
-timeout
,-sessionTimeout
:<Integer>
in seconds : Specifies the timeout before the server automatically kills a session that hasn't had any activity in the last X seconds. The test slot will then be released for another test to use. This is typically used to take care of client crashes. For grid hub/node roles, cleanUpCycle must also be set.
默认值:1800
快照:
因此,您会看到超时,并且 selenium 在大约 30 分钟未被调用后自动终止浏览器会话。
解决方案
您可以增加 -timeout
/ -sessionTimeout
如下:
$>java -jar /path/to/selenium-server-standalone-3.14.0.jar -sessionTimeout 57868143