准备:html
#请在此以前先了解,selenium grid ;参考:selenium-grid ,下载地址, win-本地部署过程node
>>>环境准备: Linux操做系统linux
>>>给Linux安装Python(linux 默认已经安装)web
>>>安装docker参考Ubuntu安装docker步骤,安装完毕后检验,安装是否正确chrome
>>>docker search selenium 命令查看须要安装的selenium包 ;目前只支持Chrome 和 Firefox两种浏览器docker
>>>下载主 hub 对象: sudo docker pull selenium/hububuntu
>>>下载主node - Chrome 镜像 :sudo docker pull selenium/node-chromeapi
>>>下载完成后查看镜像:sudo docker images浏览器
>>>启动主hub 容器:sudo docker run -d -P --name selenium-hub selenium/hub网络
>>> 启动分支node 容器 :sudo docker run -d --link selenium-hub:hub selenium/node-chrome
selenium-hub
容器,并为其设置了别名hub
>>>查看容器:docker ps -a
* Selenium/hub 容器的端口号为 4444
,对Ubuntu映射的端口为 32768
,前面经过 -P
参数自动分配
>>> OK!环境搭建至此结束。使用 http://Linux外网地址:32768/grid/console ; 查看环境
>>> 运行本地的测试脚本;
from selenium import webdriver from time import sleep driver = webdriver.Remote( command_executor='http://Linux外网地址:32768/wd/hub', desired_capabilities={'browserName': 'chrome'} ) driver.get('https://www.baidu.com') driver.find_element_by_id("kw").send_keys("selenium grid") driver.find_element_by_id("su").click() sleep(2) driver.get_screenshot_as_file("result-1.png") driver.quit()
整个执行不过是不可见的,由于他它的运行环境在Linux;要想知道他有没有执行,能够截图验证;
* 若是执行过程当中,发现报 Java 空指针异常的错误,请删除掉安装的容器和镜像文件,从新安装一次selenium/hub 和 selenium/node-chrome ;删除 请参考:中止、删除全部的docker容器和镜像
总结: