如何在selenium中按属性点击?

时间:2014-12-17 14:18:43

标签: selenium selenium-webdriver

HTML结构:

<g class="bars">
    <rect class="bar selected" x="81" y="79" width="66" height="126">
    <rect class="bar selected" x="169" y="79" width="66" height="126">
    <rect class="bar selected" x="257" y="60" width="66" height="145">
</g>

我需要点击选中属性x = 81的栏。 这该怎么做? 谢谢

1 个答案:

答案 0 :(得分:2)

通过xpath 查找元素。示例(使用python绑定):

element = driver.find_element_by_xpath('//g[@class="bars"]/rect[@x="81"]')
element.click()

找到该元素肯定有多种方法。例如,您可以从rect标记中获取第一个g

//g[@class="bars"]/rect[1]

或者,您还可以检查class属性:

//g[@class="bars"]/rect[@class="bar selected"][1]

或者,您可以组合我提到的选项并创建自己的xpath。它实际上取决于元素的唯一性以及它在整个页面中的属性。很难说没有看到页面的完整HTML源代码。