Ver Mensaje Individual
  #9 (permalink)  
Antiguo 27/09/2011, 09:02
albertomozgz
 
Fecha de Ingreso: mayo-2011
Mensajes: 64
Antigüedad: 13 años, 6 meses
Puntos: 8
Respuesta: Uso de DomDocument

Aun sigo con este rollo pero esta vez es para scrapear otro tipo de código donde no se muy bien de que manera sacar la información, tal y como yo lo hago no es eficiente.

Pongo el código del cual quiero sacar información:

Código HTML:
<font>
<font>
<b>Título: </b>
Robocop (Ciencia Ficción)
</font>
<br>
<font>
<b>Director: </b>
Paul Verhoeven
</font>
<br>
<font>
<b>Intérpretes: </b>
Peter Weller, Nancy Allen, Ronny Cox, Daniel Oherlihy, Kurtwood Smith
</font>
<br>
<font>
<b>Datos: </b>
EE.UU. (1987) 97 minutos
</font>
<br>
<font>
<b>Argumento: </b>
Ambientada en un futuro distópico en la ciudad de Detroit, Michigan. El crimen violento esta fuera de control, y la ciudad, que está en ruina financiera, encarga el funcionamiento del Departamento de Policía -que es privatizado- a la mega corporación OCP (Omni Productos de Consumo). OCP está interesada en la reconstrucción del "Viejo Detroit" y pretende reemplazarlo con lo que llama "Ciudad Delta", pero antes de que este gran proyecto de construcción pueda comenzar, OCP desea acabar con el crimen en la ciudad, y con ese fin crea a RoboCop, un policía cyborg. Lo único necesario es un desafortunado voluntario: el policía Alex Murphy, cruelmente torturado y cosido a balazos en una redada contra el crimen.
</font>
<br>
</font> 

Como se puede apreciar es un font que contiene otros font, yo lo que quiero es sacar la información del director, interpretes, datos y argumento, de tal manera que deberia tener como salida:

Paul Verhoeven || Peter Weller, Nancy Allen, Ronny Cox, Daniel Oherlihy, Kurtwood Smith || EE.UU. (1987) 97 minutos || Ambientada en un futuro distópico en la ciudad de Detroit, Michigan. El crimen violento esta fuera de control, y la ciudad...


Este es el código con el que he intentado sacar la información sin éxito:

Código PHP:
$doc2= new DOMDocument();
$doc2->loadHTML($datosPel);
$DatosPeliculas = array();
echo 
"antes del foreach";
$info=array("Director: ""Interpretes: ""Datos: ""Argumento: ");
//Este array lo uso para ayudar a cortar
$datos=array();
//Donde quiero guardar la informacion
    
foreach($doc2->getElementsByTagName('font') as $item2) {                        
              echo 
'1)Enlace #'.$j.': Keys: <br>';
          echo 
'1)Contenido: '.$item2->textContent;
                foreach(
$info as $infors){
                    if (
substr(stristr($item2->textContent$infors), strlen($infors), strlen($item2->textContent))!=""){
                        
$datos[]=substr(stristr($item2->textContent$infors), strlen($infors), strlen($item2->textContent));
                        }
                    }
                    echo 
'<br><br><br>';
              
$j++;
        }  
print_r($datos); 

Espero que se entienda lo que quiero lograr al menos en este script....