Xpath sélectionner tous les tr après le deuxième tr

c# html-agility-pack xpath

Question

J'utilise HtmlAgilityPack, j'ai un html de table

<TABLE class=default cellSpacing=0 width="95%" border=0 name="LISTA_MOV"><TBODY>
<TR>
<TD class=normal colSpan=5 align=center>ACCOUNT IN&nbsp;EUR: ES1030580147982720000036 - HAZERA ESPAÑA</TD></TR>
<TR>
<TD class=columnas vAlign=top width=80 align=center>Date</TD>
<TD class=columnas vAlign=top width=60 align=center>Value date</TD>
<TD class=columnas vAlign=top align=center>Reference</TD>
<TD class=columnas vAlign=top align=center>Amount</TD>
<TD class=columnas vAlign=top align=center>Balance</TD></TR>
<TR>
<TD class=columnas vAlign=top width=80 align=center><INPUT onclick="sortTable('LISTA_MOV',0,true,'Date');" alt="Ordenar Ascendente" src="/BE/util_apoyo/img/esp/orden_1.gif" type=image border=0 name=Sort>&nbsp;<INPUT onclick="sortTable('LISTA_MOV',0,false,'Date');" alt="Ordenar Descendente" src="/BE/util_apoyo/img/esp/orden_2.gif" type=image border=0 name=Sort_Date_down0></TD>...

quand j'essaie de dater, (que dans le td avec la valeur de date) avec Xpath "//tr//td[1]"

<TABLE class=default cellSpacing=0 width="95%" border=0 name="LISTA_MOV"><TBODY>
<TR>
<TD class=normal colSpan=5 align=center>ACCOUNT IN&nbsp;EUR: ES1030580147982720000036 - HAZERA ESPAÑA</TD></TR>
<TR>
<TD class=columnas vAlign=top width=80 align=center>Date</TD>
<TD class=columnas vAlign=top width=60 align=center>Value date</TD>
<TD class=columnas vAlign=top align=center>Reference</TD>
<TD class=columnas vAlign=top align=center>Amount</TD>
<TD class=columnas vAlign=top align=center>Balance</TD></TR>
<TR>
<TD class=columnas vAlign=top width=80 align=center><INPUT onclick="sortTable('LISTA_MOV',0,true,'Date');" alt="Ordenar Ascendente" src="/BE/util_apoyo/img/esp/orden_1.gif" type=image border=0 name=Sort>&nbsp;<INPUT onclick="sortTable('LISTA_MOV',0,false,'Date');" alt="Ordenar Descendente" src="/BE/util_apoyo/img/esp/orden_2.gif" type=image border=0 name=Sort_Date_down0></TD>...

je reçois 40 valeurs et les deux premiers que je n'ai pas besoin, ils sont "nbsp;" et "Date", j'ai juste besoin de réparer mon Xpath qui me reviendra tout après une seconde (ou plus dans un autre cas)

Comment puis-je avoir besoin de changer Xpath //tr//td[1] pour qu'il recherche tr après les deuxièmes éléments tr.

Réponse acceptée

comme DGibbs a dit que vous pouvez utiliser position, appliquez-la comme:

GeneralUtils.GetListDataFromHtmlSourse(PageData, "//tr[position() > 2]//td[1]");

Réponse populaire

Vous pouvez essayer d’utiliser le filtre XPath position() , par exemple:

//tr[position() > 2]//td[1]



Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi