Selenium web 自动化使用 python:如何使用 selenium 处理表以通过匹配文本来查找特定行并删除该行
Posted
技术标签:
【中文标题】Selenium web 自动化使用 python:如何使用 selenium 处理表以通过匹配文本来查找特定行并删除该行【英文标题】:Selenium web automation using python: How can I handle table using selenium to find a particular row by matching text and delete that row 【发布时间】:2021-12-30 19:29:13 【问题描述】:以下是一段代码,我已经复制了一条记录(行)。我想从下面的代码中搜索 selenium1 并删除该表的记录。我已经分享了记录在表格中的外观的屏幕截图。每条记录的ID也不同。所以,我想根据匹配的文本删除记录。请帮忙
<tr class="evenrow" id="S2D10925" onmouseover="javascript:this.className='hilightrow';" onmouseout="javascript:this.className='evenrow';" onclick="javascript:selectNode('S2D10925');">
<td align="left">
<img src="../images/icons/destinations\email3.png" style="vertical-align:middle;"
>
SELENIUM1
</td>
<td nowrap="nowrap" align="left">Automation1</td>
<td nowrap="nowrap" align="left">INTERNET</td>
<td nowrap="nowrap" align="left">INTER_PROVIDER</td>
<td align="left">SELENIUM1@SEQENT.COM</td>
<td align="left">selenium1@seqent.com</td>
<td align="left">EMAIL</td>
<td nowrap="nowrap" align="left">(UTC-10:00) Hawaii</td>
<td nowrap="nowrap" align="left">Enabled</td>
</tr>
enter image description here
【问题讨论】:
【参考方案1】:我会选择 XPath。 实现会因您使用的库而异,但底层 Webdriver 支持 XPath。
Example XPath 可以让你获得包含 td 和给定文本的 tr 节点
//tr[//td[contains(text(),'Automation1')]]
这是一个使用您的 html 片段的 Codepen:
https://codepen.io/chm-dev-the-selector/pen/dyVdLOa
如果您不熟悉 XPath,我强烈推荐此资源: https://devhints.io/xpath 如果您想直截了当,我发现它非常有用且节省时间,尤其是使用 XPath 测试平台(在页面上提供)。
在类似的主题上也发现了这个: https://www.guru99.com/using-contains-sbiling-ancestor-to-find-element-in-selenium.html
【讨论】:
以上是关于Selenium web 自动化使用 python:如何使用 selenium 处理表以通过匹配文本来查找特定行并删除该行的主要内容,如果未能解决你的问题,请参考以下文章
快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)
Selenium web 自动化使用 python:如何使用 selenium 处理表以通过匹配文本来查找特定行并删除该行
Python(80)_使用selenium实现第一个web自动化程序