¿Cómo crear XPATH para un elemento HTML DOM? por ejemplo, "/ HTML/BODY/DIV [1]/TABLE [1]/TR [2]/TD [1]/INPUT".cómo crear XPATH para un elemento HTML DOM?
Dado un elemento DOM cómo obtener esta cadena XPATH? Alguna idea?
Gracias,
Dattebayo.
¿Cómo crear XPATH para un elemento HTML DOM? por ejemplo, "/ HTML/BODY/DIV [1]/TABLE [1]/TR [2]/TD [1]/INPUT".cómo crear XPATH para un elemento HTML DOM?
Dado un elemento DOM cómo obtener esta cadena XPATH? Alguna idea?
Gracias,
Dattebayo.
Como recuerdo, la extensión xpath checker de firefox le ofrece una interfaz de apuntar y hacer clic para obtener el xpath a los elementos DOM en un documento HTML.
Después de muchas dificultades encontré la manera de hacerlo.
Junto con la ruta DOM también utiliza el SourceIndex de cada nodo. Me gusta "/ Html: 1/Cuerpo: 2/Div: 5/Entrada: 6"
Pero de nuevo, 1. Esto podría no funcionar en caso de página dinámica (ajax para modificar el contenido). 2. Esto podría no ser exclusivo en todos los navegadores, ya que el SourceIndex puede variar en todos los navegadores según el motor de renderizado del navegador que organiza los nodos. (aún no estoy seguro de esto, solo un pensamiento).
En Mozilla se implementó un componente xpath generator aunque nunca llegó a las compilaciones predeterminadas.
Puede encontrar las pruebas en el "parche final" adjunto al error al que me he vinculado para ver cómo se puede usar. También puede consultar su implementación, puede ser útil.
Puede crear un nuevo DOMDocument y luego importar el elemento de nodo
$DD= new DOMDocument('1.0', 'utf-8');
$DD->loadXML("<html></html>");
$DD->documentElement->appendChild($DD->importNode($DE,true));
continuación, puede utilizar XPath insithe la DOMElement:
$xpathe=new DOMXPath($DD);
Aquí es una extensión de Chrome que podría ayudarle a (ChromyQlip)
https://chrome.google.com/extensions/detail/bkmllkjbfbeephbldeflbnpclgfbjfmn