You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python Selenium中点击具有相同属性的第二个元素?

定位并点击同属性的第二个元素

场景还原

目标HTML结构如下:

<table id="FolderIcons" class="mstrLargeIconView">
    <tbody>
        <tr>
            <td class="mstrLargeIconView" colspan="1" rowspan="1"></td>
            <td class="mstrLargeIconView" colspan="1" rowspan="1"></td> 
        </tr>
    </tbody>
</table>

当前已实现点击第一个td元素的代码:

wait.until(EC.visibility_of_element_located((By.XPATH,"//td[@rowspan='1']"))).click()

解决方案

可以通过以下几种方式定位并点击第二个td元素:

方法1:XPath直接指定索引

XPath的索引从1开始,直接在属性筛选条件后添加[2],即可定位第二个符合属性要求的元素:

wait.until(EC.visibility_of_element_located((By.XPATH,"//td[@rowspan='1'][2]"))).click()

方法2:限定父元素范围(更精准)

为避免页面其他区域存在相同属性的td造成干扰,可通过目标表格的ID缩小查找范围,直接定位表格内的第二个td:

wait.until(EC.visibility_of_element_located((By.XPATH,"//table[@id='FolderIcons']//tr/td[2]"))).click()

方法3:结合属性与父元素限定(最严谨)

同时保留属性筛选和父元素范围限制,确保定位的元素完全匹配需求:

wait.until(EC.visibility_of_element_located((By.XPATH,"//table[@id='FolderIcons']//td[@rowspan='1'][2]"))).click()

内容的提问来源于stack exchange,提问作者Gabs_dot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 07:06:33