Seleccione el valor "src" con XPath a HtmlAgilityPack

c# html-agility-pack xpath

Pregunta

Estoy en un proceso de desarrollo de un motor de rastreo. Mi programa rastrea sitios web a través de Xpath con HtmlAgilityPack. Necesito obtener alguna imagen src etiqueta directamente. Puede ver mi código simple a continuación que no funciona correctamente, gracias en un consejo!

PD: Por favor, ignore "problema de caracteres, los patrones de XPath son proporcionados por la base de datos.

Agility.DocumentNode.SelectSingleNode("//img[@id="product_photo"]/@src");

Y esta es la línea que necesito rastrear (la parte *...* muestra el bloque para extraer

<img id="product_photo" src="*/images/thumb/4400/10280/st.jpg*">

Algunas páginas proporcionan imágenes en etiquetas meta, por lo que los .Attributes["src"] no funcionan.

ACTUALIZACIÓN: Puedes ver mi consulta y resultado aquí. Consulta

Respuesta popular

No puede obtener el valor de "src" o cualquier otro atributo al usar:

Agility.DocumentNode.SelectSingleNode(yourXpath);

Sólo usando:

string s=Agility.DocumentNode.SelectSingleNode(yourXpath).value;

Es porque XPath no puede devolver el valor de un atributo por la función SelectSingleNode () en la clase HtmlAgilityPack. Por lo tanto, debe utilizar SelectSingleNode(yourXpath).value o usar Regex después del pharsing para obtener solo el "src" sin el texto externo.




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é