Python_Xpath相关的应用
Xpath相关的应用
一、表达式
1.//* 找所有的元素
2.//input 找到输入框
3.//*[@*] 有属性的所有元素
4.//*[@id] 找到属性为id的所有元素
5.//*[@id="div1"] 找到特定属性的元素
6.//*[@id="div2" and @name="wulaoshidiv"] 与,属性组合找到唯一的元素
7.//*[@id="div1" or @name="wulaoshidiv"] 或
8.//*[@id!='div1'] 非
9.//*[contains(@name,"wulao")] 模糊匹配,contains包含;动态的;
10.//*[.="挺风和日丽的"] 文本定位
注意:***索引使用时要求必须在同一个元素下
11.//div[@id="div1"]/p[.="挺风和日丽的"]
12.//div[@id="div1"]/p[contains(.,"风")]
13.//div[@id="div1"]/p[last()] 函数找最后一个last()
14.//div[@id="div1"]/p[1]/.. 当前节点的父节点..
15.//div[@id="div1"]/* 找到div1下的所有元素
16.//p[.>=20] ;//p[text()>20] #>=,>,<,<=
17.//p[text()!=20] #!=
18.//p[text()=50]/preceding-sibling::p[1] #前面的兄弟节点
19.//p[text()=40]/following-sibling::p[1] #后面的兄弟节点
20.//p[text()=40]/parent::div 父节点
21.//p[.='40']/ancestor::div祖先
22.//p[text()="40"]/ancestor::div/preceding-sibling::div 亲属关系演练
23.//*[@id="div1"]/child::p[1]
二、练习:定位3个网站的输入框和按钮:
3个网站分别是:www.baidu.com\www.sogou.com\www.bing.com
www.baidu.com //input[@id="kw"] //input[@id="su"] www.sogou.com //input[@id="query"] //input[@id="stb"] www.bing.com //input[@id="sb_form_q"] //input[@id="sb_form_go"]
三、练习:126邮箱定位账号、密码和登陆按钮
//input[@placeholder="邮箱帐号或手机号"] //input[@placeholder="密码" and @type="password"] #//input[@name="password"] //a[@id="dologin"] #//iframe[contains(@id,"x-URS-iframe")]