首页 > 解决方案 > 在硒中。如何使用 Span 类单击第二个索引/列表?

问题描述

 self.driver.find_element_by_xpath("//span[@class='bog']").click()

这是我当前的代码。使用这种方法。我可以点击我的 gmail 收件箱的第一封电子邮件。然后我想单击第二封电子邮件或第三封电子邮件。但我不确定该怎么做

self.driver.find_element_by_xpath("//span[@class='bog' and @xpath='2']").click()

我尝试了这种方法,但没有奏效。使用色彩路径。我能够搜索“沼泽”,然后找到所有电子邮件的列表,每封电子邮件都显示:

"<span id=":2y" class="bog" xpath="1"></span>"
"<span id=":2y" class="bog" xpath="2"></span>"

关于这个问题的任何帮助?我希望每次都能点击收件箱的第二封电子邮件。

标签: pythonhtmlselenium

解决方案


您可以使用 xpath 索引:

对于这个 xpath :

//span[@class='bog']

你可以有如下索引:

(//span[@class='bog'])[1]

将代表第一个元素。[2]将代表第二个元素[3]并将代表3rd元素等等..

在代码中:

self.driver.find_element_by_xpath("(//span[@class='bog'])[1]").click()

或者

self.driver.find_element_by_xpath("(//span[@class='bog'])[2]").click()

推荐阅读