我一直在寻找一个XPath代码来获取HTML元素属性的值作为回归测试的一部分。任何人都可以请帮助
属性值是每个下一个元素的动态变化
下面是HTML代码
<figcaption id="recentVideosvideoname0" data-videono="xZA6FJ32Twe2GQYEuBHJnQ==" title="test for test" class="caption">test for test</figcaption>
我想要属性:data-videono
我尝试过这样的事情
By.xpath(("//div[contains(@id,'recentVideos')]/div/a/figure/figcaption"));
答案 0 :(得分:0)
请按照下面提到的方法:
driver.findElement(By.xpath("//div[contains(@id,'recentVideos')]/div/a/figure/figcaption")).getAttribute("data-videono");
答案 1 :(得分:0)
以下是您的问题的答案:
要检索属性data-videono
,您可以考虑使用以下代码行:
String my_attribute = driver.find_element_by_xpath("//figcaption[starts-with(@id, 'recentVideos') and @title='test for test']").getAttribute("data-videono");
如果这回答你的问题,请告诉我。
答案 2 :(得分:0)
您可以使用XPath本身获取属性值。
XPath 1.0
"//div[contains(@id,'recentVideos')]/div/a/figure/figcaption/@data-videono"
注意字符串末尾的@data-videono
,它将返回属性值(p.s.它似乎是base64编码数据)
答案 3 :(得分:0)
我不知道我是否有你的问题,但你是否已经尝试过:
String var = driver.frindElemnt(By.xpath(“将你的xpath放在这里”))。getAttribute(“data-videono”);