想要获取标签之外的文字。这是HTML:
{
"executable":1
}
我想获得约会,<table border="0" cellpadding="0" cellspacing="0" width="100%"
class="viewingsCommentsTbl">
<tbody>
<tr>
<td>
<b style="border: 2px solid red;
background: rgb(204, 136, 136);">Viewing Conducted: </b>
18-May-2016
</td>
</tr>
<tr>
<td style=""><b style="">Duration: </b> 1 hr</td>
</tr>
<tr>
<td style=""><b style="">Comments: </b>66yy</td>
</tr>
</tbody>
</table>
我尝试过XPath,但它不起作用:
"18-May-2016"
答案 0 :(得分:1)
文字位于<td>
标记中,而不是<b>
。尝试
//*[@class="viewingsCommentsTbl"]/tbody/tr[1]/td
答案 1 :(得分:0)
嗨,请尝试如下
WebElement dateis = driver.findElement(By.xpath("//*[@class='viewingsCommentsTbl']/tbody/tr/td"));
System.out.println("Date is : " + dateis.getText());
,输出结果为:日期为:观看进行中:2016年5月18日
//如果只想提取日期
String [] extractdate = dateis.getText().split(" ");
System.out.println("Extracted date is : " + extractdate[2]);
,输出结果为:提取日期为:2016年5月18日
答案 2 :(得分:0)
这是一种 更强大的 方式,可根据.table-row-cell:empty:odd, .table-row-cell:empty:even {
-fx-background-color: transparent;
}
.table-row-cell:odd {
-fx-background-color: red;
}
.table-row-cell:even {
-fx-background-color: lightblue;
}
中"18-May-2016"
内的Viewing Conducted:
标签选择td
{1}}表 独立于
表格布局 :
viewingsCommentsTbl
通过选择元素的父元素的字符串值,然后使用normalize-space(
substring-after(//table[@class='viewingsCommentsTbl']
//td[starts-with(.,'Viewing Conducted:')],'Viewing Conducted:'))
获取标签后面的文本,可以获取标签之外的文本(根据您的请求)。