Selenium4自动化测试6--控件获取数据--下拉框级联选择、checkbox选择、时间选择器

4-下拉框级联选择

复制代码
import time
from selenium.webdriver.support.select import Select
#pip install selenium
from selenium import webdriver
from selenium.webdriver.common.by import By

# 定义一个driver的变量,用来接收实例化后的浏览器
# 指定浏览器的位置,解决浏览器驱动和浏览器版本不匹配的问题
chrome_location = r'D:\pythonProject2023\SeleniumFirst\chrome-win64\chrome.exe'
options = webdriver.ChromeOptions()
options.binary_location = chrome_location
driver = webdriver.Chrome(options=options)
# 使用get方法,访问网址
driver.get("https://www.iviewui.com/view-ui-plus/component/form/cascader")
driver.find_element(By.XPATH,'//input[@class="ivu-input ivu-input-default"]').click()
driver.find_element(By.XPATH,'//li[contains(text(),"北京")]').click()
driver.find_element(By.XPATH,'//li[contains(text(),"王府井")]').click()
time.sleep(3)
driver.quit()

5-checkbox选择

复制代码
import time

#pip install selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
# 定义一个driver的变量,用来接收实例化后的浏览器
# 指定浏览器的位置,解决浏览器驱动和浏览器版本不匹配的问题
chrome_location = r'D:\pythonProject2023\SeleniumFirst\chrome-win64\chrome.exe'
options = webdriver.ChromeOptions()
options.binary_location = chrome_location
driver = webdriver.Chrome(options=options)
# 使用get方法,访问网址
driver.get('https://www.iviewui.com/view-ui-plus/component/form/checkbox')
#窗口最大化
driver.maximize_window()
driver.find_element(By.XPATH,'//span[text()="香蕉"]').click()
time.sleep(3)
driver.find_element(By.XPATH,'//span[text()="苹果"]').click()
time.sleep(3)
driver.find_element(By.XPATH,'//span[text()="西瓜"]').click()
time.sleep(3)

#同级哥哥写法
# driver.find_element(By.XPATH,'//span[text()="香蕉"]/preceding-sibling::span/input').click()
# time.sleep(3)
# driver.find_element(By.XPATH,'//span[text()="苹果"]/preceding-sibling::span/input').click()
# time.sleep(3)
# driver.find_element(By.XPATH,'//span[text()="西瓜"]/preceding-sibling::span/input').click()
# time.sleep(3)


time.sleep(3)
driver.quit()

6-时间选择器

复制代码
import time
from selenium.webdriver.support.select import Select
#pip install selenium
from selenium import webdriver
from selenium.webdriver.common.by import By

# 定义一个driver的变量,用来接收实例化后的浏览器
# 指定浏览器的位置,解决浏览器驱动和浏览器版本不匹配的问题
chrome_location = r'D:\pythonProject2023\SeleniumFirst\chrome-win64\chrome.exe'
options = webdriver.ChromeOptions()
options.binary_location = chrome_location
driver = webdriver.Chrome(options=options)
# 使用get方法,访问网址
driver.get("https://www.iviewui.com/view-ui-plus/component/form/date-picker")
driver.find_element(By.XPATH,'//input[@class="ivu-input ivu-input-default ivu-input-with-suffix"]').send_keys("2023-11-21")
driver.find_elements(By.XPATH,'//input[@class="ivu-input ivu-input-default ivu-input-with-suffix"]')[1].send_keys("2023-11-10 2023-11-21")
time.sleep(3)
driver.quit()

时间选择器这里特别说明一下,有的时间选择器直接赋值不行,空间是readonly这时就要用js修改控件的属性,不让他readonly 如下:

复制代码
#执行js 去掉日期控件的readonly
btime = '//*[@id="btime"]'
js_b = "document.getElementById('btime').removeAttribute('readonly')"
driver.execute_script(js_b)
相关推荐
万化冥合29 分钟前
怎么批量把 Word 转 PDF?
python·pdf·c#·word
~城南花已开~33 分钟前
Redfish 事件接收服务搭建指南(Ubuntu Server 实测)
linux·服务器·python·ubuntu
fengyangaiGEO35 分钟前
如何通过GEO优化实现外贸B2B询盘增长?
人工智能·python
jianxuan1 小时前
Spring Boot + Maven 接入 Allatori:从普通打包到可选混淆发布
spring boot·python·maven
不一样的故事1261 小时前
Prompt 工程(Prompt Engineering)
前端·人工智能·python
我命由我123451 小时前
6-2.Python 异常处理 - 异常捕获(捕获指定异常、常见异常类型、异常信息)
java·运维·开发语言·python·http·https·java-ee
zh路西法1 小时前
【模型式强化学习】(三):MBPO——短轨迹生成与模型数据驱动的策略优化
python·强化学习·pe·sac·pets·mbpo·mbrl
Angeldream1231 小时前
第 9 章 医学影像项目实战
大数据·图像处理·人工智能·python·医学影像处理
ZhengEnCi1 小时前
一亿条数据取前100条完全指南:从全量排序到分块流式最小堆的4种解法实测
python·算法·排序算法
2601_967979121 小时前
AccessControl 5.4 macOS Python 3.9 版本安装包
python·macos·security·accesscontrol·permissions