I have a table that looks like this
<table cellpadding="1" cellspacing="0" width="100%" border="0">
<tr>
<td colspan="9" class="csoGreen"><b class="white">Bill Statement Detail</b></td>
</tr>
<tr style="background-color: #D8E4F6;vertical-align: top;">
<td nowrap="nowrap"><b>Bill Date</b></td>
<td nowrap="nowrap"><b>Bill Amount</b></td>
<td nowrap="nowrap"><b>Bill Due Date</b></td>
<td nowrap="nowrap"><b>Bill (PDF)</b></td>
</tr>
</table>
I am trying to create the XPATH to find this table where it contains the test Bill Statement Detail. I want the entire table and not just the td.
Here is what I have tried so far:
page.parser.xpath(‘//table[contains(text(),”Bill”)]’)
page.parser.xpath(‘//table/tbody/tr[contains(text(),”Bill Statement Detail”)]’)
Any Help is appreciated
Thanks!
Your first XPath example is the closest in that you’re selecting
table. The second example, if it ever matched, would selecttr—this one will not work mainly because, according to your example, the text you want is in abnode, not atrnode.This solution is as vague as I could make it, because of
*. If the target text will always be underb, change it todescendant::b:This is as specific, given the example, as I can make: