webdriver 中比较常用的操作元素的方法有下面几个:
clear
清除元素的内容,如果可以的话
send_keys
在元素上模拟按键输入
click
单击元素
submit
提交表单
登陆实例
# -*- coding:utf-8 -*-
from selenium import webdriver
from time import sleep
driver = webdriver.Firefox()
url = "https://passport.baidu.com/v2/?login&tpl=mn&u=http%3A%2F%2Fwww.baidu.com%2F"
driver.get(url)
# driver.find_element_by_css_selector("#u1 > a[name=tj_login]").click()
# #TANGRAM__PSP_3__userName
driver.find_element_by_css_selector("#TANGRAM__PSP_3__userName").clear()
driver.find_element_by_css_selector("#TANGRAM__PSP_3__userName").send_keys('userName')
# #TANGRAM__PSP_3__password
driver.find_element_by_css_selector("#TANGRAM__PSP_3__password").clear()
driver.find_element_by_css_selector("#TANGRAM__PSP_3__password").send_keys('password')
# #TANGRAM__PSP_3__submit
driver.find_element_by_css_selector("#TANGRAM__PSP_3__submit").click()
sleep(100000)
driver.quit()
WebElement 接口常用方法
size
返回元素的尺寸。
#返回百度输入框的宽高
size=driver.find_element_by_id("kw").size
print size
text
获取元素的文本,例:
#返回百度页面底部备案信息
text=driver.find_element_by_id("cp").text
print text
get_attribute(name)
获得属性值。例:
#返回元素的属性值,可以是id、name、type 或元素拥有的其它任意属性
attribute=driver.find_element_by_id("kw").get_attribute('type')
print attribute
需要说明的是这个方法在定位一组时将变得非常有用,后面将有运行的实例。
is_displayed()
设置该元素是否用户可见。例:
#返回元素的结果是否可见,返回结果为True 或False
result=driver.find_element_by_id("kw").is_displayed()
print result