转载地址:https://www.cnblogs.com/mini-monkey/p/12104821.html

前言
有时候测试过程中会遇到日期控件场景,这时候需要特殊处理,下文以12306网站为例

1.处理方式
通常是通过js去除只读属性(2种方法),然后通过send_keys重新写值

from time import sleep

driver = webdriver.Chrome()
driver.get("https://www.12306.cn/index/")
sleep(2)

date_txt = driver.find_element_by_xpath("//*[@id='train_date']")

# 方法1:通过js的getElementById去掉只读属性
driver.execute_script("document.getElementById('train_date').removeAttribute('readonly');")

# 方法2:通过js的document.arguments[0]去掉只读属性
driver.execute_script("arguments[0].removeAttribute('readonly');",date_txt)

# 通过send_keys操作,重新写值
date_txt.clear()   # 先清除原来的日期值
date_txt.send_keys('2020-06-21')```

selenium+python 处理只读日期控件的2种方法

 

前言
有时候测试过程中会遇到日期控件场景,这时候需要特殊处理,下文以12306网站为例

1.处理方式
通常是通过js去除只读属性(2种方法),然后通过send_keys重新写值

from time import sleep

driver = webdriver.Chrome()
driver.get("https://www.12306.cn/index/")
sleep(2)

date_txt = driver.find_element_by_xpath("//*[@id='train_date']")

# 方法1:通过js的getElementById去掉只读属性
driver.execute_script("document.getElementById('train_date').removeAttribute('readonly');")

# 方法2:通过js的document.arguments[0]去掉只读属性
driver.execute_script("arguments[0].removeAttribute('readonly');",date_txt)

# 通过send_keys操作,重新写值
date_txt.clear()   # 先清除原来的日期值
date_txt.send_keys('2020-06-21')```
 
分类: selenium
标签: selenium
好文要顶 关注我 收藏该文  
0
0
 
 
 

» 下一篇: git使用小技巧-忽略提交文件设置
posted @ 2020-05-23 22:34  刘惊玲  阅读(210)  评论(0)  编辑  收藏  举报