2018-8-14python selenium定位元素(2)
使用cssselector定位元素的两种方案
1.直接右键copy
2.手动获取,如:username=driver.find_element_by_css_selector('input[placeholder="请输入用户名"]')
使用Xpath
1.绝对路径:username=driver.find_element_by_xpath('/html/body/div/div/form/div[2]/div[1]/div/div/input')
当有多个同一元素,如div时应当标【1】、【2】等,【1】可以省略不加
2.全文索引:username=driver.find_element_by_xpath('//input')#查找到全文中的第一个input
username=driver.find_element_by_xpath('//input[2]')#查找到全文中的第二个input
容易出错不推荐
3.指定父元素进行索引:username=driver.find_element_by_xpath('//form//input')#查找到父元素为form的第一个input
当前节点的父元素节点:.
选取父元素地址:..
//xxx[@id]选取使用xxx元素中有id属性的元素
//xxx[not(@id)]选取使用xxx元素中没有id属性的元素
//xxx[@id='yyy']选取所有xxx元素中id为yyy的元素
//*所有元素
//*[count(input)=2]遍历整个文档,选取有两个input标签的元素(其他函数见5)
注:当使用//时,属性前需加@
4.关于.与..
e=d.find_element_by_xpath('//div[@class="login_box"]')
5.一些方法
last()