Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > La Taberna
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #10  
Antiguo 10-05-2011
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Bueno bueno,

como lo haríais para analizar tablas dentro de tablas dentro de tablas (repetir n veces), la forma que tengo de analizar las webs, es primero buscar una "marca del tesoro", una cadena de texto que identifique el elemento contenedor de los datos que necesito extraer; puede ser un título o una cosa similar, exclusiva al 100%.

Adjunto un fichero de ejemplo, donde quiero sacar los datos "Equivalencias":

Código:
<td valign="top" colspan="2" class="textos">
HITACHI:<br>
S114-850, -A,-B,-C<br>
OPEL:<br>
1202033<br>
1202146<br>
1202161</td>
También adjunto las dos librerías que usan en el libro para trabajar.

De hecho, ahora usaba la función
Código PHP:
$text_html "<div>...</div>"//el texto html para analizar
$delimitador_inicio "<table";
$delimitacion_final "</table>";
$tablas parse_array($text_html$delimitador_inicio$delimitacion_final); 
La teoría dice que con esta llamada, tendría todas las tablas existentes en el código dentro de un array pero veo que se hace la picha un lío la pobre.

Un ejemplo de programa en PHP:

Código PHP:
<?php

require_once 'LIB_http.php';
require_once 
'LIB_parse.php';

set_time_limit(0);

$web_source file_get_contents("http://localhost/SkyNet/html/robots/table/dummy.html");

$table_array parse_array($web_source"<table""</table>");

print_r($table_array);

for (
$xx 0$xx count($table_array); $xx++) {
    
$marca_tabla "Equivalencias";
    if (
stristr($table_array[$xx], $marca_tabla)) {
        
$product_row_array parse_array($table_array[$xx], "<tr""</tr>");
        for (
$table_row 0$table_row count($product_row_array); $table_row++) {
            if (
stristr($product_row_array[$table_row], $marca)) {
                
$product_cell_array parse_array($product_row_array[$table_row], "<td""</td>");
            }
        }
    }
}
?>
Al final el array con las tablas anda manco.
Archivos Adjuntos
Tipo de Archivo: zip test.zip (1,6 KB, 3 visitas)
Tipo de Archivo: zip LIB_parse.zip (3,4 KB, 2 visitas)
Tipo de Archivo: zip LIB_http.zip (3,8 KB, 2 visitas)
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0

Última edición por papulo fecha: 10-05-2011 a las 12:50:56.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tipo desconocido en SQL Pedro-Juan SQL 5 06-03-2008 22:52:18
El Ministerio de Agricultura y Pesca de Francia cambia a Linux Casimiro Notevi Noticias 6 16-07-2007 19:49:12
StarTeam, ese desconocido [Gunman] Varios 5 31-01-2007 18:10:54
DLL con nombre desconocido ixMike Varios 2 28-06-2006 11:05:02
Es un camino desconocido Oxa78 Varios 11 25-11-2004 09:47:03


La franja horaria es GMT +2. Ahora son las 16:20:21.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi