元素定位:
selenium提供了8种定位方式:
1、通过id定位:find_element_by_id()
2、通过name定位:find_element_by_name()
3、通过class name定位:find_element_by_class_name()
4、通过tag name定位:find_element_by_tag_name()
5、通过link text定位:find_element_by_link_text()
6、通过partial link定位:find_element_by_partial_link_text()
7、通过xpath定位:find_element_by_xpath()
8、通过css定位:find_element_by_css_selector()
PS:辅助定位工具Firefox插件FirePath,可以帮助对元素进行定位。
示例:
定位百度首页搜索框
from selenium import webdriver from time import sleep driver = webdriver.Chrome() driver.get("http://www.baidu.com") # 通过ID定位 driver.find_element_by_id("kw").send_keys("c") #通过name定位 driver.find_element_by_name("wd").send_keys("h") #通过class name定位 driver.find_element_by_class_name("s_ipt").send_keys("e") #通过tag name定位 #driver.find_element_by_tag_name("input").send_keys("n") #通过xpath定位 driver.find_element_by_xpath(".//*[@id='kw']").send_keys("python") #通过css定位 driver.find_element_by_css_selector("#kw").send_keys("selenium") sleep(5)
常规操作:
一、点击
click():单击元素。
driver.find_element_by_id("su").click()
二、模拟输入
send_keys():模拟按键输入
driver.find_element_by_id("kw").send_keys("chen")
三、清除文本
clear():清空输入框
driver.find_element_by_id("kw").clear()
四、提交表单
submit():一般用于模拟回车键
driver.find_element_by_id('kw').submit()
五、其他
size:获取元素的尺寸
text:获取元素的文本信息
get_attribute(name):获取属性值
is_displayed():设置元素是否可见