首页 > 编程语言 > 详细

Python+selenium自动化-js处理日历控件(修改readonly属性)

时间:2020-04-22 12:22:39      阅读:113      评论:0      收藏:0      [点我收藏+]

前言

今天写自动化脚本的时候遇到一个需要更改日期的控件,不想费劲巴拉的去找日历的定位,但是又没办法直接输入我想输的日期时间,想了会儿之后决定用js解决日历控件

基本思路:先用js去掉readonly属性,然后直接输入日期文本内容

案例 

1.很明显这种元素的属性是readonly,输入框是无法直接输入的

 2.F12找到日历框控件对应的元素,找到readonly属性,双击删除,回车

 3.回到页面,点击日历框随意输入字符,测试成功

 技术分享图片

 

 

 

代码

当然,我这个只是随手写的一个大概的运行例子,具体的要根据你自己的实际情况来变动一下

 1 from selenium import webdriver
 2  
 3 def test():
 4     driver = webdriver.Chrome()
 5     driver.get(r"www.123.com")
 6     # 首先根据id定位到日历输入框
 7     js = document.getElementById("STARTTIME").removeAttribute("readonly");
 8     # 运行js代码
 9     driver.execute_script(js)
10     start_time = self.driver.find_element_by_id(STARTTIME)
11     # 如果输入框内有默认的内容,需要先清空输入框
12     start_time.clear()
13     # 输入需要修改的时间
14     start_time.send_keys(‘2020-04-22’)
15  
16 if __name__ == __main__:
17     test()

 

Python+selenium自动化-js处理日历控件(修改readonly属性)

原文:https://www.cnblogs.com/ldpgg/p/12750931.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!