铬右键有复制xpath地址
但是有些时候获取的可能不对
可以自己用代码验证一下
如果还是不行可以考虑从源码当中取出来
趁热打铁,使用前一篇文章中XPath节点来定位HTML页面。
<强> HTML文件如下(您可以将其拷贝,保存成HTML文件,跟我笔者实验):强>
& lt; !DOCTYPE html> & lt; html lang=癳n”比; & lt; head> & lt;元charset=皍tf - 8”比; & lt; title> Storm & lt;/head> & lt; body> & lt; h2 id=" h2 " name=癶name”class=癱name”比;这是一个h2标签& lt;/h2> & lt; form> 文本域1:& lt;输入类型=拔谋尽钡拿?癴irst_name”比; & lt; br> 文本域2:& lt;输入类型=拔谋尽钡拿?發ast_name”比; & lt;/form> & lt; form> 密码字段:& lt;输入类型=懊苈搿泵?懊苈搿北? & lt;/form> & lt; form> 单选按钮1: & lt;输入类型=肮悴ァ眓ame="迎合广大" value=" https://www.yisu.com/zixun/nan "在男性 & lt;输入类型=肮悴ァ眓ame="迎合广大" value=" https://www.yisu.com/zixun/nv "在女性 & lt;/form> & lt; form> 宠物: & lt;输入类型=案囱】颉泵?傲ā痹诿? & lt;输入类型=案囱】颉泵?傲ā痹诠? & lt;输入类型=案囱】颉泵?傲ā痹谕米? & lt;/form> & lt;/body> & lt;/html>
<强> 1,节点强>
上面的HTML文件,& lt; html>为根节点,他有个朗的属性,他有两个子节点& lt; head>和& lt; body>。
<强> 2,选取节点实验强>
(1)/,从根节点选取
下面的代码从根节点开始选取所有的html元素(这里只有一个),打印标签的名字,就是html
从硒进口webdriver 司机=webdriver.Chrome () driver.get (r 'file:///E: \ python \ test1 \ \ test0.html俊”) el=driver.find_elements_by_xpath ('/html ') 在el避署: 打印(ele.tag_name) driver.quit () >之前运行结果
C: \ Python36 \ python。exe E: test1/python///test9.py俊 超文本标记语言 过程完成退出代码0 >之前(2)//,从目标节点下选取
下面的xpath,意思就是我要去找,找到就保存到厄尔里面,不一定需要在根目录下面找
从硒进口webdriver 司机=webdriver.Chrome () driver.get (r 'file:///E: \ python \ test1 \ \ test0.html俊”) el=driver.find_elements_by_xpath(“//头”) 在el避署: 打印(ele.tag_name) driver.quit () >之前运行结果:
C: \ Python36 \ python。exe E: test1/python///test9.py俊 头 过程完成退出代码0 >之前如果我换成下面的xpath,结果会如何呢?
从硒进口webdriver 司机=webdriver.Chrome () driver.get (r 'file:///E: \ python \ test1 \ \ test0.html俊”) el=driver.find_elements_by_xpath(/头) 在el避署: 打印(ele.tag_name) driver.quit () >之前从根节点选取头元素,跟节点不是头元素,所以找不到,打印为空
(3)。,选取当前节点;. .,选取父节点
下面的xpath,第一个,匹配到头部元素,然后分配找头当前节点(就)是头,头父节点(是html)
从硒进口webdriver 司机=webdriver.Chrome () driver.get (r 'file:///E: \ python \ test1 \ \ test0.html俊”) eles2=driver.find_elements_by_xpath(“//头/薄? eles3=driver.find_elements_by_xpath(//头/? 避署的eles2: 打印(ele.tag_name) 避署的eles3: 打印(ele.tag_name) driver.quit () >之前运行结果:
C: \ Python36 \ python。exe E: test1/python///test9.py俊 头 超文本标记语言 过程完成退出代码0 >之前(4) @选取属性
下面xpath为匹配任意元素,其有个属性字符集,值为utf - 8。
从硒进口webdriver 司机=webdriver.Chrome () driver.get (r 'file:///E: \ python \ test1 \ \ test0.html俊”) eles3=driver.find_elements_by_xpath ('//* [@charset=" utf - 8 "]”) 避署的eles3: 打印(ele.tag_name) driver.quit ()python定位xpath节点位置的方法