IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Selenium Grid分布式 -> 正文阅读

[系统运维]Selenium Grid分布式

一、基本认识:
分布式执行其实是将脚本转化成指令发送给hub,再由hub分发给node,然后node返回执行结果;所以一切打印和获取都会由执行指令的node返回给hub,然后返回给脚本执行地。
1、连接远程资源都需要host+port
2、selenium grid就是遵从第一点建立连接(协议)
3、hub主节点、node分支节点
	1-hub节点和node节点,没有固定要求的先后部署顺序
	2-hub\node是通过host+port进行衔接(交流沟通-->神经)
二、环境部署:
1、环境部署方式:
	1-本地部署
	2-容器部署(docker)
2、部署操作
	(1)下载selenium grid(稳定版)
	https://www.selenium.dev/downloads/
	(2)放到指定文件夹(自定义d://download)
	(3)切换到文件夹

在这里插入图片描述
在这里插入图片描述

3、命令行部署
	1-在命令行中切换在下载jar包所在目录:
	d:
	cd d://download
	
	2-注册hub\node:(不指定端口就默认)
	1)注册hub:java -jar <你的jar包> -role hub -port 4444
	2)注册node:java -jar <你的jar包> -role node -port 4445

4、json部署
	注册hub\node:
	1)注册hub:java -jar <你的jar包> -role hub hubConfig <hub的json配置文件> -debug
	2)注册node:java -jar <你的jar包> -role node nodeConfig <node的json配置文件> -debug

	

在这里插入图片描述

5、docker部署
	1-下载docker
	https://www.docker.com/
	2-安装docker(傻瓜式安装)
	3-运行docker
	4-在docker容器中下载各个节点的镜像(terminal里输入)1)docker pull selenium/hub  拉取hub节点的镜像
		2)docker pull selenium/node-chrome-debug  拉取node节点的镜像
		3)docker pull selenium/node-firefox-debug  拉取node节点的镜像
	5-启动镜像:
		1)启动hub:docker run -d -p 4444:4444 --name selenium-hub selenium/hub
		2)启动node:docker run -d --link selenium-hub:hub  selenium/node-chrome

在这里插入图片描述
拉取后的效果
在这里插入图片描述
启动镜像:
在这里插入图片描述
启动成功:
在这里插入图片描述
查看和修改IP
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、使用:
import time
from selenium import webdriver



# hub主节点的url  http://192.168.11.1:4444/wd/hub
# docker/hub 172.17.0.3:5555
url = "http://192.168.11.1:4444/wd/hub"  
desired_capabilities = {
    "browserName":"chrome",  #指定运行的浏览器
    "version":"",        #指定版本
    "platform":"any",    #指定平台
    "javascriptEnabled":"true" #指定是否支持Js脚本
}

driver = webdriver.Remote(url,desired_capabilities=desired_capabilities)
driver.get("https://www.baidu.com")
driver.find_element("id","kw").send_keys("selenium grid")
driver.find_element("id","su").click()
time.sleep(2)
driver.get_screenshot_as_file("baidu.png")
driver.quit()

经常遇到的错误
1)浏览器驱动版本问题
浏览器驱动和浏览器版本不对应
2)hub节点没启动
会报错:selenium grid urllib3.exceptions.MaxRetryError
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-22 15:02:37  更:2021-09-22 15:05:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 16:28:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码