• 主页
  • 使用Selenium for Python时{}中元素的XPATH语法

使用Selenium for Python时{}中元素的XPATH语法

我目前正在尝试用Python中的Selenium点击网页上的每个按钮,每个按钮的类和文本总是相同的,但每个按钮都有不同的ids。但是,ids在{}中的“data-paramater”中,我不知道如何获得xpath的正确语法。以下是其中一个按钮的网站片段:

<span class="contains-icon-details gc-btn gc-btn--s" data-isneededpromise="false" data-parameters="{"partner":"gs", "realId": "8da1d6a9-44d1-4556-bc12-92699749a30a", "tnId": "102086182829", "type": "details"}">More Details</span>

似乎realId和tnId是独一无二的,所以我需要找到这两个按钮中的任何一个。

这是可行的:

driver.find_element_by_xpath("//span[@class='contains-icon-details gc-btn gc-btn--s']").click()

但当然只针对第一个按钮,因为类总是一样的。

我尝试了这样的东西:

driver.find_element_by_xpath("//*[contains(@tnId, '102086182829')]").click()

但我得到了

Unable to locate element: //*[contains(@tnId, '102086182829')]

所以肯定不是正确的语法。

我试着在网上找到一个解决方案,但到目前为止还没有成功。谁能给我指个方向?提前谢谢。

转载请注明出处:http://www.cxd6.com/article/20230513/2280436.html