Mi sto strappando i capelli cercando di capire questo business di agility pack HTML. Nessun esempio riesco a trovare lavoro con la mia tabella, non importa ciò che modifico. Ecco il tavolo con cui sto lavorando:
<td class="trow1"><strong><a href="NEED1"><span style="color:#383838">NEED2</span></a></strong></td>
<td class="trow1">NEED3</td>
<td class="trow1" align="center"" alt="" /></td>
<td class="trow1" align="center"><strong>NEED4</strong></td>
</tr><tr>
<td class="trow2"><strong><a href="NEED1"><span class="group9">NEED2</span></a></strong></td>
<td class="trow2">NEED3</td>
<td class="trow2" align="center"" alt="" /></td>
<td class="trow2" align="center"><strong>NEED4</strong></td>
</tr><tr>
<td class="trow1"><strong><a href="NEED1"><span class="group0">NEED2</span></a></strong></td>
<td class="trow1">NEED3</td>
<td class="trow1" align="center"" alt="" /></td>
<td class="trow1" align="center"><strong>NEED4</strong></td>
</tr><tr>
<td class="trow2"><strong><a href="NEED1"><span class="group7">NEED2</span></a></strong></td>
<td class="trow2">NEED3</td>
<td class="trow2" align="center"" alt="" /></td>
<td class="trow2" align="center"><strong>NEED4</strong></td>
</tr><tr>
<td class="trow1"><strong><a href="NEED1"><span class="group0">NEED2</span></a></strong></td>
<td class="trow1">NEED3</td>
<td class="trow1" align="center"" alt="" /></td>
<td class="trow1" align="center"><strong>NEED4</strong></td>
</tr>
Ho sostituito quello che mi serve con "NEED" 1-> 4 per ogni riga. Sto cercando di popolare una vista elenco con questa (già fatta questa parte). Ma sono perso su come andare su questo.
Qualsiasi aiuto? Grazie.
Tradurre questo codice in VB.NET non è difficile, puoi farlo come segue:
var doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
NEED1
var value = doc.DocumentNode.SelectSingleNode("//td[@class='trow1']/strong/a").Attributes["href"].Value;
NEED2
var value = doc.DocumentNode.SelectSingleNode("//td[@class='trow1']/strong/a/span").InnerText;
NEED3
var innerText = doc.DocumentNode.SelectSingleNode("//td[@class='trow1' and not(*)]").InnerText;
Need4
var innerText = doc.DocumentNode.SelectSingleNode("//td[@class='trow1']/strong[not(a)]").InnerText;
Metto sopra la singola selezione, se vuoi selezionare tutto il nodo in una puoi usare il metodo SelectNodes
.
Spero che questo ti sia d'aiuto.