c # HtmlAgilityPack per l'array di nodi

arrays c# html html-agility-pack

Domanda

Sto usando il pacchetto di agility html e dopo aver ottenuto una serie di nodi:

HtmlNode[] nodes = document.DocumentNode.SelectNodes("//tbody[@class='table']").ToArray();

ora voglio eseguire un ciclo for uno ogni nodo [i]. Ho provato questo:

 for (int i = 0; i < 1; i++)
            {

                if (t == null)
                    t = new Model.Track();

                 HtmlNode[] itemText = nodes[i].SelectNodes("//td[@class='artist']").ToArray();

                for (int x = 0; x < itemText.Length; x++)
                { //doing something      }

il problema è che l'array itemtext non si concentra sui nodi [i]. ma mostra un array di tutti ("// td [@ class = 'artist']") nel documento html. Aiuto?

Risposta accettata

Usando //td[@class='artist'] recupererai tutte le colonne con la classe artist dal tuo document.DocumentNode .

Usando .//td[@class='artist'] (Notare il punto all'inizio) recupereremo tutte le colonne con la classe artist dal nodo selezionato corrente, che nel tuo caso sono i nodes[i] .



Related

Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché