Foros del Web » Programando para Internet » PHP »

¿Como parsear con paginacion?

Estas en el tema de ¿Como parsear con paginacion? en el foro de PHP en Foros del Web. Buenos días compañeros! Espero que me podais ayudar y agradezco de antemano cualquier respuesta. Estoy intentando parsear los registros de una web (utilizo Simple html ...
  #1 (permalink)  
Antiguo 05/01/2013, 05:57
sidneyendis
Invitado
 
Mensajes: n/a
Puntos:
¿Como parsear con paginacion?

Buenos días compañeros!

Espero que me podais ayudar y agradezco de antemano cualquier respuesta.

Estoy intentando parsear los registros de una web (utilizo Simple html Dom parser), pero me encuentro con el problema que estos están paginados... y la paginación tiene la siguiente estructura:
Código:
1 2 3 4 5 6 7 8 9 10 11 ... siguiente >>
y si te encuentras en la página 2 tambien añade el boton de "<< Anterior".

Tengo el siguiente código;
Código PHP:
$htmlfile_get_html('http://www.webaparsear.com/registros/');

foreach(
$html->find('#pagination') as $pag) {
 foreach(
$pag->find('ul li.next a') as $ultimo_link) {
   echo 
$ultimo_link->href.'<br />';
 }
//Fin 2º foreach
}//Fin 1º foreach 
Consigo mostrar el link (href) del boton "next" y mi duda es la siguiente...
¿Como consigo repetir esta operación dentro del link obtenido en el boton next(pagina 2)... y del boton next de la siguiente pagina (página 3)... de forma indefinida hasta que no exista boton next?

Si conocéis una forma más sencilla os agradecería que me lo hicieseis saber.... Yo he optado por ir recorriendo los botones next ya que así no se repite ninguna pagina ni falta ninguna.... ya que por ejemplo estando en la página 1... faltaría el link de la página 1 y de la página 2 se repetiría 2 veces (el número 2 y el boton next) y así sucesivamente....

Espero no haber liado mucho la perdiz

Un saludo!!
  #2 (permalink)  
Antiguo 10/01/2013, 08:53
sidneyendis
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¿Como parsear con paginacion?

Bueno.... me contesto a mi mismo después de unos días de lucha.... eso si... es como más se aprende... he aprendido cosas que no hacían falta para el desarrollo del código... jeje

Código PHP:
include('simple_html_dom.php'); //Incluimos la libreria
registros('http://www.webaparsear.com/ruta_donde_este_la_paginacion.php');

function 
registros($pagina) {    
    
$html = new simple_html_dom();
    
$html->load_file($pagina);  

    
// Buscamos el boton siguiente 
    
if($next $html->find('ul li.next a'0)) {
        
$url $next->href;
        echo 
"Esta es la página: $url <<<\n <br />";
        
$link file_get_html($url);
    
// Y aquí parseamos lo que queramos de cada página
        // Limpiamos memoria
        
$html->clear();
        unset(
$html);
        
        
registros($url);
    }
//Fin If
}//Fin Function registros 
Espero que a alguien le sirva.... Un saludo!!

Etiquetas: enlace, link, parsear
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:45.