selenium-远程调用

```
1.拉去镜像:
docker pull selenium/hub
docker pull baozhida/selenium-node-chrome-debug:58
docker pull baozhida/selenium-node-firefox-debug:52
2.创建并允许容器:
创建selenium hub容器
dockerrun -d -p 4444:4444 --name selehub selenium/hub

创建chrome node容器
docker run -d -p 5901:5900 --name node58 --link selehub:hub --shm-size=512m baozhida/selenium-node-chrome-debug:58

创建firefox node容器
docker run -d -p 5912:5900 --name ff52 --link selehub:hub --shm-size=512m baozhida/selenium-node-firefox-debug:52
说明:
    *-d参数:后台模式运行;
    --name参数:别名;
    -p参数:将容器的5900端口映射到docker的5901端口,访问Docker的5901端口即可访问到node容器;
    --shm-size参数:docker默认的共享内存/dev/shm只有64m,有时导致chrome崩溃,该参数增加共享内存大小到512m.*
docker logs -f selehub:查看日志
在浏览器输入:主机ip:4444/grid/console
下载VNC客户端:https://www.realvnc.com/en/connect/download/vnc/
输入192.168.99.100:5901-->回车-->输入密码:secret-->确认-->进入chrome
输入192.168.99.100:5901-->回车-->输入密码:secret-->确认-->进入firefox


    from  selenium import webdriver
    firefox_capabilities={
        "browserName":"firefox",
        "version": "52.0",#注意版本号一定要写对
        "platform": "ANY",
        "javascriptEnabled": True,
        "marionette": True,
    }
    browser=webdriver.Remote("http://192.168.99.100:4444/wd/hub",desired_capabilities=firefox_capabilities)#注意端口号4444是我们上文中映射的宿主机端口号
    browser.get("http://www.baidu.com")
    browser.get_screenshot_as_file(r"C:/baidu.png")
    browser.close()

```

猜你喜欢

转载自www.cnblogs.com/an5456/p/11247063.html