c # HtmlAgilityPack para en la matriz de nodos

arrays c# html html-agility-pack

Pregunta

Estoy usando el paquete de agilidad html y, después de obtener una matriz de nodos:

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

ahora quiero ejecutar un bucle for cada uno de los nodos [i]. He intentado esto:

 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      }

el problema es que la matriz de elementos de texto no se centra en los nodos [i]. pero saca una matriz de todos los ("// td [@ class = 'artist']") en el documento html. ¿ayuda?

Respuesta aceptada

El uso de //td[@class='artist'] recuperará todas las columnas con clase de artist de su document.DocumentNode .

El uso de .//td[@class='artist'] (Observe el punto al principio) recuperará todas las columnas con clase de artist del nodo seleccionado actual, que en su caso son los nodes[i] .




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué