selenium元素定位之 动态id, class元素定位
1.直接进入正题
如下图, 有些元素每次进入都会刷新, 造成元素无法重复定位
怎么办?
"xpath部分属性值"定位方法可以帮到我们
1.包含属性定位
driver.find_element_by_xpath('//*[contains(@id,"auto-id")]')
contains(a, b)
如果a中含有字符串b,则返回true,否则返回false
2.开头包含属性定位
driver.find_element_by_xpath('//*[starts-with(@id,"auto")]')
starts-with(a, b)
如果a是以字符串b开头,返回true,否则返回false
3.结尾包含属性定位
driver.find_element_by_xpath('//*[ends-with(@id,"auto-id")]')
ends-with(a, b)
如果a是以字符串b结尾,返回true,否则返回false
注意注意, "结尾包含属性定位"此方法目前不可用, 原因是因为本人技术low
ps:各种浏览器对xpath的支持情况不一样, 所以可能会出现在这一浏览器可以定位到, 换到别的浏览器就无法定位到的情况