当前位置: 首页 > 知识库问答 >
问题:

在id不存在时查找标签文本

查宜修
2023-03-14

我正在使用selenium web驱动程序在下面的html标记中查找标签文本:

<tr id="row" style="display: inline; padding-left: 10px; padding-right: 10px;">
<td>
<table width="776" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td align="right">&nbsp;</td>
<td>&nbsp;</td>
<td align="right">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td width="92" height="25" align="left">**Label Text&nbsp**;</td>
<td width="227">
<td width="170" align="left">">**Label Text 2&nbsp**;</td>
</td>
</tr>

我使用了driver.findelement(by.id(“row”)).gettext(),但它没有检索到任何信息。如何让它打印标签文本。谢了。

共有1个答案

窦弘义
2023-03-14

若要访问“标签文本”单元格,您需要搜索单元格本身,而不是包含单元格的行。如果你用的是WatiN,情况就是这样。查找带有“标签文本”的任何元素的另一种方法是:

ReadOnlyCollection<IWebElement> temp = driver.FindElements(By.XPath("//td[@text='Label Text'])); 

如果示例中的“label text”是不同文本的位置持有者,这将变得很棘手,您可以尝试在包含单元格的tableRow中抓取每个单元格。但是,只有第一行似乎有ID。希望这能有所帮助!

编辑:或者,一个(非常)黑客的解决方案,如果你确切知道你想要的单元格,并且它有一个独特的大小(就像你的例子),你可以尝试找到所有单元格,然后手动搜索它们的宽度。例如:foreach(tempCells中的IWebElement temp){if(temp.size.width==170)temp.text;}

 类似资料:
  • 在问这个问题之前,我提到了这个问题,但尽管看起来很相似,但这个问题并没有包含我的问题的答案。 我开发了Springboot项目,并在本地机器上创建了名为的docker映像。因此,当我运行时,它会列出我在本地拥有的所有图像, 然后我参考了这些文档,将我的docker图像拉到dockerhub中。所以我给图像加了标签,然后按照命令按下按钮, 但结果是一个错误, 推送引用存储库[docker.io/se

  • 问题内容: 当我使用Eclipse向Java类中添加未实现的方法来修复错误时,方法会自动生成并包含 有没有一种简单的方法可以查看包含此注释的所有方法?某种菜单选项? 问题答案: 有没有一种简单的方法可以查看包含此注释的所有方法?某种菜单选项? 是的,请选择以下选项之一: 1)前往( 否 )。新视图将显示默认情况下“控制台”和“问题”选项卡的位置。 2)如其他地方所述,如果您有问题的源文件处于打开状

  • 我正在尝试使用SDN3.0创建节点。2和Neo4j 2.0。1. 我是这样做的: 以这种方式执行,我得到for the

  • 问题内容: 我有一个pandas数据框: 我有兴趣找到其中一个标签的标签位置,例如, 查看索引值,我知道这是此标签1的整数位置。如何使熊猫知道此标签的整数值是什么? 问题答案: 您正在寻找index方法:

  • 问题内容: 我正在进行ajax调用来获取内容并像下面这样添加内容: 问题是,当我进行更改时,我什么也没得到(没有错误,只有html)。我假设body是一个标签,就像“ a”一样?我究竟做错了什么? 所以这对我有用: 但这不是: 问题答案: 恐怕通过jQuery对象(即)解析返回的HTML 以获取标记注定会失败。 原因是返回的是(try )。现在,根据jQuery文档,当从包含复杂HTML标记的字符

  • 将docker图像推送到注册表时,我收到以下消息: 唯一的方法是通过web界面在docker repository中创建标记,然后docker push工作。 是否有创建docker push的命令行?