Css定位
selenium极力推荐使用Css定位,而不是xpath定位元素,原因是css定位比xpath定位块,速度快,语法更加简洁
css常用的定位方法:
1、find_element_by_css_selector()
2、#id 选择器根据id属性来定位元素
3、.class 选择器,根据class属性来定位元素
4、[attribute='value']根据属性来定位元素
5、element>element根据元素层级来定位 父元素>子元素
1 from selenium import webdriver 2 from time import sleep 3 4 driver=webdriver.Firefox() 5 driver.get("http://www.baidu.com") 6 sleep(2) 7 8 #通过id来定位: 9 driver.find_element_by_css_selector("#kw").send_keys("java") 10 #通过class来定位; 11 driver.find_element_by_css_selector(".s_ipt").send_keys("python") 12 #通过属性来定位 13 driver.find_element_by_css_selector("[autocomplete='off']").send_keys("selenium") 14 sleep(2) 15 driver.find_element_by_css_selector("#su").click() 16 driver.get("http://www.51zxw.com") 17 #通过元素的层级来定位 18 driver.find_element_by_css_selector("form#id='loginForm'>u1>input").send_keys("hahha ")