1.web上的控件种类十分多,但是大致分为2种,一种为类型是input的且可以输入,第二种为类型是input的且属性为readonly,文本框不可编辑
2.第一种类型为可以输入的,直接send_keys,代码如下:
1
2
3
4
5
6
7
8
9
|
from selenium import webdriver driver = webdriver.Ie() driver.get( 'http://jqueryui.com/resources/demos/datepicker/other-months.html' ) Date = driver.find_element_by_id( 'datepicker' ) Date.send_keys( '06/07/2018' ) print (Date.get_attribute( 'value' )) |
3.第二种类型为不可输入的,且属性为readonly,先用js去掉readonly属性,然后输入文本内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
from selenium import webdriver import time driver = webdriver.Ie() driver.get( 'https://kyfw.12306.cn/otn/index/init' ) driver.implicitly_wait( 4 ) js = 'document.getElementById("train_date").removeAttribute("readonly");' #js去掉readonly属性 driver.execute_script(js) js_value = 'document.getElementById("train_date").value="2018-08-22"' #js添加时间 driver.execute_script(js_value) time.sleep( 2 ) driver.quit() |