Home > Php > Parsear HTML utilizando la librer­ía PHP Simple HTML DOM

Vamos a ver una librería que nos puede ser de gran utilidad si necesitamos extraer código HTML. Para ello haremos uso de la librería PHP Simple HTML DOM.

Lo primero que debemos de hacer es descargar la librería para posteriormente incluirla en nuestro proyecto.
Se puede usar de dos formas la primera es en un código html que le pasemos y para ello utilizaremos la función load la otra forma de usarlo es usar la función load_file
Hay que mencionar que si la configuración del servidor, la directiva “allow_url_fopen” no está a true, entonces no podrás utilizar la carga de archivos externos ya que hace uso de la función de PHP “file_get_contents”.
Una vez que tu crear el objeto, ya puedes empezar a trabajar con la información. Puedes utilizar el método “find” y crear colecciones. Una colección es un grupo de objetos que han sido localizados bajo un mismo selector, por ejemplo la etiqueta “p”.
Supongamos que tenemos el siguiente código HTML.

<html>
<body>
<p>Hello World!</p>
<p>We're Here.</p>
</body>
</html>

Si queremos añadir al segundo texto algo de información, se podría hacer de la siguiente forma.

#incluimos la libreria para crear la instancia
include('simple_html_dom.php');
$html = new simple_html_dom();
$html->load("

Hello World!

We’re here

");
# hacemos nuestra busqueda 
$element = $html->find("p");

En el ejemplo buscamos todos los elementos “p” del documento con el método find(), lo que nos devuelve un array con todos los elementos encontrados.
Luego podemos hacer lo que deseemos con la información ejemplo guardarla en una base de datos o simplemente para visualizarla