目录
1. 认识Selenium
2. Selenium 三大组件
3. Selenium自动化测试环境搭建
3.1 安装selenium 库
3.2 安装浏览器驱动
1. 查看浏览器版本号
2. 下载浏览器驱动
3. 把driver移动到Path目录
4. 验证driver就绪
3.3 启动浏览器
4. Selenium自动化测试环境的自动化配置
1. 安装依赖
2. 启动浏览器
5. Selenium工作原理
5.1 指令执行路径
5.2 指令内容
5.3 两大对象
今日内容:环境搭建与原理讲解(Selenium的三大组件、两大对象、webdriver类型和下载、webdriver协议原理)
1. 认识Selenium
2. Selenium 三大组件
3. Selenium自动化测试环境搭建
- 编程语言
- selenium 库
- 浏览器驱动 driver
- 浏览器
3.1 安装selenium 库
pip install selenium
3.2 安装浏览器驱动
1. 查看浏览器版本号
2. 下载浏览器驱动
3. 把driver移动到Path目录
set Path
Linux 、Mac 查看Path目录
echo $PATH
4. 验证driver就绪
3.3 启动浏览器
4. Selenium自动化测试环境的自动化配置
- 繁琐
- 需要更新,反复操作
1. 安装依赖
搭建环境,需要Python3.9以上文章来源:https://www.toymoban.com/news/detail-458661.html
pip install webdriver-helper
2. 启动浏览器
from webdriver_helper import *driver = get_webdriver () # 默认是谷歌driver = get_webdriver ( "firefox" ) # 可以指定火狐driver . get ( "https://baidu.com" )
#get_webdriver()后,不使用with也会自动关闭浏览器
with get_webdriver() as driver:
driver.get("https://www.baidu.com")
5. Selenium工作原理
5.1 指令执行路径
from selenium.webdriver.common.by import By
from webdriver_helper import *
driver = get_webdriver() # 启动浏览器
driver.get("https://baidu.com") # 访问指定的页面
ele = driver.find_element(By.XPATH, '//*[@id="kw"]')
ele.send_keys("百度一下?")
driver.quit()
Python 代码 -- 调用 ---> selenium --- 发送 HTTP 请求 ---> 浏览器驱动 ---- (特殊方法) --> 浏览器
5.2 指令内容
- webdriver 协议 约定内容
- js代码
-
今天,还有很多指令通过js实现
- getAttribute.js 获取元素属性
- isDisplayed.js 判断元素是否可见
- findElement.js 相对定位 se4新特性
5.3 两大对象
- WebDriver 对象: 整个页面,浏览器本身
- WebElemen 对象: 页面中某个元素
其中: WebElement对象要通过元素定位来获取 文章来源地址https://www.toymoban.com/news/detail-458661.html
- https://www.selenium.dev/selenium/docs/api/py/webdriver_remote/selenium.webdriver.remote.webelement.html#module-selenium.webdriver.remote.webelement
- https://www.selenium.dev/selenium/docs/api/py/webdriver_remote/selenium.webdriver.remote.webdriver.html#module-selenium.webdriver.remote.webdriver
总结
-
selenium 有三大组件,其中最核心的是WebDriver
- WebDriver 通过面向对象的方式,为技术人员提供结构
- WebDriver 通过Restful API 的方式 调用 浏览器驱动,完成浏览器控制
- 整个过程,已经成为w3c标准,这个标准称为WebDriver 协议
-
selenium 两大对象:
- 对浏览器的操作: WebDriver对象
- 对元素的操作: WebElement对象
-
Selenium4 已经发布,具体新的语法和特性
- 本次课程使用 selenium 4.1.0
- 没有明确说明的部分,也可能是selenium4的特性,从而在selenium3中报错
-
selenium 4 的主要特性
- webdriver 的启动参数
- 元素定位api
- 相对定位
- 双向API (bidi_api) 草稿阶段
- selenium 测试环境,可以手动搭建,也可以自动化搭建
pip install webdriver-helper
from selenium import webdriver
driver = webdriver.Chrome()
到了这里,关于Python+Selenium4环境搭建与原理讲解_web自动化(1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!