HtmlAgilityPack wählt Knoten auf der ersten Ebene aus

html-agility-pack

Frage

Betrachten Sie den folgenden HTML-Code

<tr>
  <td>1</td>
  <td>2</td>
  <td>
    <table>
      <tbody>
        <tr>
          <td>3</td>
          <td>4</td>
        </tr>
      <tbody>
    </table>
  </td>
  <td>5</td>
</tr>

Was ich hier will, ist, alle <td> -Elemente, die direkte Nachkommen sind, in die <tr> Hauptreihe zu übernehmen. Was bedeutet, ich möchte 1, 2 and 5 .

Der Code, den ich verwende

gridRow.Descendants("td")

gibt alle <td> -Elemente unter dem Hauptknoten <tr> .

Bietet HtmlAgilityPack die Funktionalität, um Nachkommen der ersten Ebene zu erhalten (weil ich eine solche Methode nicht finden kann)?

Akzeptierte Antwort

HtmlNode.Elements("child_name") ist genau das, wonach Sie suchen:

gridRow.Elements("td")

Beliebte Antwort

Ok, ich denke, das wird funktionieren:

 gridRow.Descendants("td").Where(x => x.ParentNode == gridRow)

Dadurch werden alle <td> -Elemente zurückgegeben, deren direktes übergeordnetes Element das Hauptelement <tr> ist.




Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum