我在python中使用selenium来检查包含的字体标签之间是否有文本,如果是,则检查标签是否为。
html代码:
<table width="100%" border="0" cellspacing="1" cellpadding="1" bgcolor="#000000" height="80">
<tbody>
<tr bgcolor="#666699">
<td height="17" bgcolor="#CCCC99">
<font size="2"><b><font face="Arial, Helvetica, sans-serif">PARTY 1</font></b></font>
</td>
</tr>
<tr>
some html code...
</tr>
</tbody>
</table>
正如你所看到的,这是一个例子我需要检查html页面中是否包含PARTY 1,如果是这样的话,请回到tbody元素。 我应该说没有办法使用id获取元素,因为还有其他表以相同的方式编写。 我已经尝试使用//font [contains(。,'PARTY 1')],但因为它没有用
使用selenium的最佳方法是什么,检查PARTY 1是否在并且获得tbody elment?
答案 0 :(得分:0)
此xpath返回TBODY标记,其中包含带有'PARTY 1'文本的FONT标记:
//tbody[.//font[contains(.,'PARTY 1')]]
答案 1 :(得分:0)
首先使用el = driver.find_element_by_xpath('insert xpath here')
获取字体元素,然后使用el.text
获取文本。您的代码应如下所示:
el = driver.find_element_by_xpath('insert xpath of font tag here')
if el.text == 'PARTY 1':
return driver.find_element_by_xpath('insert xpath of tbody here')