elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:22  


Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Parsear HTML con PHP – Simple HTML DOM Parser
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Parsear HTML con PHP – Simple HTML DOM Parser  (Leído 2,025 veces)
madpitbull_99
Moderador Global
***
Desconectado Desconectado

Mensajes: 1.898



Ver Perfil WWW
Parsear HTML con PHP – Simple HTML DOM Parser
« en: 22 Mayo 2011, 16:21 »

Navegando por SourceForge me encontré con una interesante aplicación para parsear código HTML. Su nombre es PHP Simple HTML DOM  Parser y está orientada a parsear el DOM de HTML.

Primero vamos a descargarla e incluirla en nuestra aplicación de prueba. Un ejemplo básico de como utilizarla es:

Código
<?php
   //Basic HTML parsing with PHP
   include("simplehtmldom/simple_html_dom.php");
 
   //Pasamos todo el contenido de la pagina a texto plano
   //echo $htmlCode = file_get_html('http://madhacking.com')->plaintext;
 
   $htmlCode = file_get_html('http://madhacking.com');
 
   // Encontrar todas las imageness
   foreach($htmlCode->find('img') as $element)
      echo $element->src . '<br>';
 
   echo "<hr />";
 
   // Mostrar todos los links
   foreach($htmlCode->find('a') as $element)
      echo $element->href . '<br>';
 
?>
 

Vamos a hacer un ejemplo que muestre todos los artículos de mi blog:

Código
<?php
   $htmlCode = file_get_html('http://madhacking.com');
   $posts = $htmlCode->find('div[class=post]');
 
   foreach($htmlCode->find('div[class=post]') as $article) {
       $item['title']     = $article->find('h2', 0)->plaintext;
       $item['info']      = $article->find('div[class=post-info]',0);
       $item['body']      = $article->find('div[class=post-content]', 0)->plaintext;
       $item['category']  = $article->find('div[class=post-meta]', 0)->plaintext;
       $articles[] = $item;
   }
 
   echo "<pre>";
   print_r($articles);
   echo "</pre>";
 
?>
 

Como podéis ver el funcionamiento es muy sencillo y no requiere esfuerzo programar algo sencillo. Os dejo los enlaces del proyecto.

Página Oficial: PHP Simple HTML DOM Parser - Manual de Uso

Si buscáis en SourceForge encontraréis proyectos similares, como:

_HTML Parser for PHP 4

_PHP Simple HTML SAX Parser

En NetTuts+ también hablan de esta librería para parsear HTML:  Parsing and Screen Scraping with the Simple HTML DOM Library.


En definitiva, se trata de una librería que no puede ahorrar mucho trabajo, si alguna vez has tenido que parsear HTML usando regex, lo entenderás.


En línea



«Si quieres la paz prepárate para la guerra» Flavius Vegetius

[Taller]Instalación/Configuración y Teoría de Servicios en Red
Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.334

he vuelto :)


Ver Perfil WWW
Re: Parsear HTML con PHP – Simple HTML DOM Parser
« Respuesta #1 en: 22 Mayo 2011, 20:05 »

Data Mining :D


En línea

Ojo por ojo, y el mundo acabará ciego.
madpitbull_99
Moderador Global
***
Desconectado Desconectado

Mensajes: 1.898



Ver Perfil WWW
Re: Parsear HTML con PHP – Simple HTML DOM Parser
« Respuesta #2 en: 23 Mayo 2011, 21:27 »

He encontrado uno más que proporciona una sintaxis parecida a SQL para parsear: htmlSQL.

Sí, se podría decir que es Data Mining, pero no tienes que usar ningún algoritmo, ni redes neuronales.
En línea



«Si quieres la paz prepárate para la guerra» Flavius Vegetius

[Taller]Instalación/Configuración y Teoría de Servicios en Red
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Parsear HTML
Programación General
smeagolKalibans 2 597 Último mensaje 15 Julio 2005, 14:12
por smeagolKalibans
Parsear HTML
Desarrollo Web
smeagolKalibans 0 295 Último mensaje 15 Julio 2005, 14:16
por smeagolKalibans
Parsear html, ¿algo sencillo?
Java
Ragnarok 3 5,579 Último mensaje 5 Junio 2007, 18:20
por alvk4r
HTML Parser [SRC]
Programación Visual Basic
cobein 1 1,026 Último mensaje 6 Diciembre 2009, 22:54
por BlackZeroX (Astaroth)
Parsear con PHP Simple HTML DOM
PHP
multi-media asdfg 5 1,861 Último mensaje 16 Julio 2011, 01:20
por multi-media asdfg
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines