RPA手把手——Python自动化处理日历控件

1、第一种较为简单的,直接文本输入即可;

2、第二种,不是输入框类型的,可以使用 select 组件,也可以用模拟按键,会发现输入年,月,日后会对应到该位置,直接回车便可选中。如下图所示:
RPA手把手——Python自动化处理日历控件_第1张图片

3、把日历的时间空间看成输入框,f12 看下,若没有 readonly 属性,直接输入就可以了。

若存在,如下图所示:
RPA手把手——Python自动化处理日历控件_第2张图片

处理思路:

若readonly属性为空,可以直接输入,否则先用js去掉readonly属性,然后直接输入
代码如下:

from selenium import webdriver
from time import sleep

url = ‘https://www.12306.cn/index/’
driver = webdriver.Chrome()
driver.get(“url”)

第一种

js = “document.getElementById(‘txtBeginDate’).removeAttribute(‘readonly’)” # 原生js,移除属性

# 第2种

js = “$(‘input[id=txtBeginDate]’).removeAttribute(‘readonly’)” # jquery,移除属性

# 第3种

js = “$(‘input[id=txtBeginDate]’).attr(‘readonly’,false)” # jquery,设置为false

# 第4种

js = “$(‘input[id=txtBeginDate]’).attr(‘readonly’,’’)” # jquery,设置为空

driver.execute_script(js)

driver.find_element_by_id(‘train_date’).send_keys(“2019-08-22”)
sleep(2)
driver.quit()

你可能感兴趣的:(RPA教程,python基础,9.0版本体验)