Selenium webdriver在同一页面点击多个按钮



我试图在python中使用selenium webdriver来单击页面上的所有感谢按钮,但问题是我的脚本只单击第一个按钮。

下面是我使用的部分代码:

counter = 0
while counter < 10:
    wd.find_element_by_xpath('//*[contains(@href,"post_thanks.php?do=")]').click()
    print ("click")
    counter += 1
    time.sleep(2)
wd.close()

脚本正在工作,它连接到网站,加载目标页面,但只在第一个感谢按钮点击。

怎样才能让所有的按钮都被点击?

尝试:

wd.find_element_by_xpath('(//*[contains(@href,"post_thanks.php?do=")])[1]').click()
time.sleep(2)
wd.find_element_by_xpath('(//*[contains(@href,"post_thanks.php?do=")])[2]').click()

我不知道为什么要用for循环,但是正如你所看到的,通过xpath我们可以识别出两个不同的按钮

不共享html,这是我能想到的最好的方法。

thanks = wd.find_elements_by_xpath('//*[contains(@href,"post_thanks.php?do=")]')
for ta in thanks:
     ta.click()
     time.sleep()

最新更新