UI自动化-日期插件的选择-可输入不可输入情况

1. 可输入时间插件,直接输入内容进行时间的选择

找到时间插件xpath,直接进行send_keys的方法进行写入

python 复制代码
el = driver.find_element(By.XPATH,'/html/body/div[4]/div[3]/div/form/div[3]/input')
el.clear()
el.send_keys('2023-10-04')
sleep(1)
driver.find_element(By.XPATH,'//button[text()="保存"]').click()

2. 不可输入的时间插件

方法一:通过js的方法进行强制写入

python 复制代码
el = driver.find_element(By.XPATH,'/html/body/div[4]/div[3]/div/form/div[3]/input')
driver.execute_script("arguments[0].value=arguments[1]", el, '2013-12-04')
sleep(1)
driver.find_element(By.XPATH,'//button[text()="保存"]').click()

方法二:移除readonly属性后send_keys(针对存在readonly属性的情况)

python 复制代码
el = driver.find_element(By.XPATH,'/html/body/div[4]/div[3]/div/form/div[3]/input')

driver.execute_script("arguments[0].setAttribute('readonly', 'true');", el)  #新建一个readonly属性

driver.execute_script("arguments[0].removeAttribute('readonly');", el)  # 用JS移除readonly属性

el.clear()
el.send_keys('2020-07-04')
sleep(1)
driver.find_element(By.XPATH,'//button[text()="保存"]').click()
相关推荐
2501_944525543 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 预算详情页面
android·开发语言·前端·javascript·flutter·ecmascript
2301_790300963 小时前
Python单元测试(unittest)实战指南
jvm·数据库·python
摘星编程3 小时前
React Native + OpenHarmony:自定义useFormik表单处理
javascript·react native·react.js
VCR__3 小时前
python第三次作业
开发语言·python
韩立学长3 小时前
【开题答辩实录分享】以《助农信息发布系统设计与实现》为例进行选题答辩实录分享
python·web
pas1363 小时前
39-mini-vue 实现解析 text 功能
前端·javascript·vue.js
qq_532453534 小时前
使用 GaussianSplats3D 在 Vue 3 中构建交互式 3D 高斯点云查看器
前端·vue.js·3d
2401_838472514 小时前
使用Scikit-learn构建你的第一个机器学习模型
jvm·数据库·python
u0109272714 小时前
使用Python进行网络设备自动配置
jvm·数据库·python
工程师老罗4 小时前
优化器、反向传播、损失函数之间是什么关系,Pytorch中如何使用和设置?
人工智能·pytorch·python