爱陪小樱桃

导航

 

xpath的层级与逻辑定位:

之前我们是通过class和id,name,如果我们所需要的元素没有class,id,name这样的元素,怎么定位呢

1、在不使用xpath情况下:元素没有属性值得时候怎么定位?

2、如果你所需要定位的元素,有属性值,但是不是唯一的,怎么定位;

 

下边来看一下怎么元素没有属性值得时候怎么定位?

 

我们可以先定位form元素,然后U1,然后input来相对位置来定位,我们可以通过对父节点来定位,然后逐个位置的往下走,一般一到两级都可以找到;

 1 from selenium import webdriver
 2 from time import sleep
 3 #加载浏览器驱动
 4 driver=webdriver.Firefox()
 5 #打开百度
 6 driver.get("http://www.51zxw.com")
 7 sleep(2)
 8 #层级和属性结合定位,自学网的首页的输入用户名和密码
 9 driver.find_element_by_xpath("//form[@id='loginForm']/u1/input[1]").send_keys("lele")
10 
11 driver.find_element_by_xpath("//form[@id='loginForm']/u1/input[2]").send_keys("ljlkjl")

如果你所需要定位的元素,有属性值,但是不是唯一的,怎么定位--------我们可以通过组合定位来定位;

 1 from selenium import webdriver
 2 from time import sleep
 3 #加载浏览器驱动
 4 driver=webdriver.Firefox()
 5 #打开百度
 6 driver.get("http://www.51zxw.com")
 7 sleep(2)
 8 
 9 #逻辑组合运算定位
10 #driver.find_element_by_xpath("//input[@class='loinp' and @name='username'] ").send_keys("yuejsdkjf")

 

posted on 2017-11-19 21:40  cherry小樱桃  阅读(1483)  评论(0编辑  收藏  举报