Tengo una página XHTML bien formada . Quiero encontrar la URL de destino de un vínculo cuando tenga el texto que está vinculado.
Ejemplo
<a href="http://stackoverflow.com">programming questions site</a>
<a href="http://cnn.com">news</a>
Quiero una expresión XPath tal que si se la da programming questions site
, dará http://stackoverflow.com
y si la doy news
, dará http://cnn.com
.
http
o determinada palabra clave?Demasiado tarde para ti, pero para cualquiera que tenga la misma pregunta ...
Por supuesto, "programación" puede ser cualquier fragmento de texto.
fuente
que básicamente identifica un nodo de anclaje
<a>
que tiene el texto que desea y extrae elhref
atributo.fuente
Piense en la frase entre corchetes como una cláusula WHERE en SQL.
Entonces, esta consulta dice, "seleccione el atributo" href "(@) de una etiqueta" a "que aparece en cualquier lugar (//), pero solo donde (la frase entre corchetes) el contenido textual de la etiqueta" a "es igual a ' sitio de preguntas de programación '".
fuente
Para contenidos que no distinguen entre mayúsculas y minúsculas, utilice lo siguiente:
translate convierte las letras mayúsculas en PROGRAMACIÓN a programación en minúsculas.
fuente
si está utilizando el paquete de agilidad html, use getattributeValue:
$doc2.DocumentNode.SelectNodes("//div[@class='className']/div[@class='InternalClass']/a[@class='InternalClass']").GetAttributeValue("href","")
fuente