xpath相对路径元素定位方法:找到元素有”精准元素“即唯一能标识的属性。
#1、通过id定位(以百度首页为例)
driver.find_element_by_xpath("//*[@id=‘kw’]").send_keys(“test”)
#2、通过class定位
driver.find_element_by_xpath("//[@class=‘s_ipt’]").send_keys(“test”)
#3、通过name定位
driver.find_element_by_xpath("//input[@name=‘wd’]").send_keys(“test”)
#4、通过其它属性定位
driver.find_element_by_xpath("//[@autocomplete=‘off’]").send_keys(“test”)
#5、多个属性组合定位(逻辑运算符and、or等)
driver.find_element_by_xpath("//*[@autocomplete=‘off’ and @class=‘s_ipt’]").send_keys(“test”)
6、通过文本属性定位
driver.find_element_by_xpath("//*[text()=‘新闻’]")
#7、通过父元素定位子元素(层级关系)
driver.find_element_by_xpath("//*[@id=‘u1’]/a[2]") # 通过上一级的id对下一级a标签进行定位(索引从1开始)
8、通过子元素找父元素
driver.find_element_by_xpath("//[@id=‘kw’]/…") # //[@id=‘kw’]/…/… 这个是找爷爷
#9、模糊匹配
driver.find_element_by_xpath("//a[contains(text(),‘hao’)]") # 文本模糊匹配
driver.find_element_by_xpath("//input[contains(@class,‘s_btn’)]") # class属性模糊匹配,其它类似