Home > Mobile >  Why my xpath expression doesn't return any result
Why my xpath expression doesn't return any result

Time:12-01

I have the following html:

<html>
<tr>

<tr>

<tr>

<tr>

<tr>

  <td>Color Digest </td>

  <td>AgArAQICGQMVBBwTIRQHIwg0GUMURAZTBWQJcwV0AoEDAQ </td>

</tr>

<tr>

  <td>Color Digest </td>

  <td>2,43,2,25,21,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, </td>

</tr>

and the following xpath:

tr[td='Color Digest']/td

and i'm getting zero results. Can someone explain me why?

enter image description here

CodePudding user response:

In xPath expression we can use attribute name but not tag name. Here both <tr> and <td> are tag names. The valid xPath expressio be like,

//tagname[@attributeName='value']

but you wrote like,

//tagname[@tagname='value']

Inside td there is only text available so you need to write xPath like

//td[text()='Color Digest ']

instead of

//tr[td='Color Digest ']

If you need to use specific element then please use the match number like below,

(//td[text()='Color Digest '])[1]
  • Related