【发布时间】:2018-01-20 15:08:21
【问题描述】:
我在我的电脑上使用 Selenium stanalone + Chrome headless + PHP + UwAmp server 来解析一些数据(系统:WIN7_32bit,4GB RAM)。
我需要同时启动 22 个 Chrome 会话,因此我使用 selenium 网格和以下设置:
java -jar selenium-server-standalone-2.53.1.jar -role hub
java -jar selenium-server-standalone-2.53.1.jar -role node -hub http://localhost:4444/grid/register -browser "browserName=chrome,maxInstances=22,seleniumProtocol=WebDriver" -maxSession 22
我的问题是主要启动了 6 个会话(图片上的示例)...有时有 2 或 4 个活动会话。我究竟做错了什么?我试图在 php.ini 中进行更改,但没有成功。这些是设置:
EDIT2:由于在其他工作站(WIN10_64bit,Intel i7,16GB RAM)上发生了同样的事情,我认为这个问题与 UwAmp 服务器设置或 selenium-server-standalone-2.53.1.jar 或谷歌浏览器。
【问题讨论】:
-
IMO,您的
CPU Usage是 100%,这就是仅产生 2、4 或 8 个活动会话的原因。将您的Test Environment转换为具有充足硬件的Test Lab以支持您的Hardware Requirement。 -
我在 Intel I7 处理器、16GB RAM 的电脑上测试过,同样的事情发生了......
-
您确定要在
tearDown()中调用quit()以摆脱陈旧的webdriver 和webbrowser 实例吗?你能分享你的代码块吗? -
是的,在我调用的每个 PHP 脚本的末尾:$session->deleteAllCookies(); $session->close();
标签: php selenium-webdriver html-parsing selenium-grid google-chrome-headless