Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/09/2012, 01:43
valdea
 
Fecha de Ingreso: septiembre-2012
Mensajes: 4
Antigüedad: 11 años, 7 meses
Puntos: 2
Interpretar bloques de etiquetas HTML

Buenas,

tengo que interpretar un texto plano en formato HTML para extraer la información y guardarla en base de datos. Tengo que quedarme con el contenido de una clase concreta y dentro de ella repetir lo mismo para identificar el contenido de sus componenetes. Como ejemplo, necesitaría guardar en SQL una lista de productos con sus precios, extrayendo la información de una página HTML ya generada.

El problema lo tengo en identificar el final de la etiqueta. Os pongo un ejemplo:

<td class="Categoria1">
<img ..... lo que sea....>
<span ... lo que sea></span>
<td class="Producto">
<span class"Descripcion">Descripcion del producto1</span>
<span class "precio">12</span>
</td>
<span lo que sea....></span>
...
<td class="Producto">
<span class"Descripcion">Descripcion del producto2</span>
<span class "precio">52</span>
</td>
<td class="Producto">
<span class"Descripcion">Descripcion del producto3</span>
<span class "precio">43</span>
</td>
<td class="Producto">
<span class"Descripcion">Descripcion del producto</span>
<span class "precio">12</span>
</td>

...
<span class "...
</td>

¿Cómo puedo identificar el bloque de texto correspondiente a la clase "Categoria1"?

Buscar el patrón entre "td class="Categoria1" y "</td> no me vale, pues pararía en el primer </td> que encontrara (en el ejemplo, el del primer producto)

¿Es esto posible? ¿Hay algún 'interprete' de HTML en PHP que identifique el final de las etiquetas?