selenium按钮,同一类,onclick search with many'

2024-09-22 16:23:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图点击“攻击”按钮。有4个按钮具有相同的文本。我正在写代码,但我弄不出来。你能帮我挑一个我想要的钮扣吗。谢谢你的帮助

按钮1:

<button class="expedition_button awesome-button " onclick="attack(null, '2', 1, 0, '')">Attack</button>

按钮2:

<button class="expedition_button awesome-button " onclick="attack(null, '2', 2, 0, '')">Attack</button>

按钮3:

<button class="expedition_button awesome-button " onclick="attack(null, '2', 3, 0, '')">Attack</button>

按钮4:

<button class="expedition_button awesome-button " onclick="attack(null, '2', 4, 0, '')">Attack</button>

我尝试了以下代码:

        self.web.find_element_by_xpath("(//button[@class=expedition_button awesome-button 'Attack'])[3]")

我还想学习如何使用任何定义的数据之前,而不是类名或按钮名或id


Tags: 代码文本selfwebbuttonelementfind按钮
2条回答

另一种方法

#You will get all 4 buttons xpath in a list
elements=driver.find_elements_by_xpath("//button[text()[contains(.,'Attack')]]")
#Now Iterate this It will click each button
for element in elements:
    print(element.text)
    element.click()

要获得特定的按钮,可以尝试使用class和index,也可以尝试使用text和index

driver.find_element_by_xpath("(//button[text()[contains(.,'Attack')]])[indexval]")
driver.find_element_by_xpath("(//button[@class='expedition_button awesome-button '])[indexval]")

对于按钮1:

driver.find_element_by_xpath("(//button[text()[contains(.,'Attack')]])[1]")

或者

driver.find_element_by_xpath("(//button[@class='expedition_button awesome-button '])[1]")

按钮2、3和;4只需增加索引值

相关问题 更多 >