Salida JSON
La tabla HTML de ejemplo produce este JSON:
[
{ "Name": "Alice", "Age": "30", "City": "Istanbul" },
{ "Name": "Bob", "Age": "25", "City": "Ankara" }
]
El primer <tr> define los nombres de propiedad. Cada <tr> posterior se convierte en un objeto en el arreglo. Los valores de celda siempre son strings ya que HTML no tiene información de tipo.
Cómo se Asignan las Tablas HTML a JSON
Las tablas HTML tienen una estructura tabular natural que se asigna directamente a un arreglo de objetos.
| Elemento HTML | Equivalente JSON |
|---|---|
<table> | Arreglo raíz |
<tr> (primera fila) | Claves de objeto |
<tr> (filas posteriores) | Elementos de arreglo |
<td> / <th> | Valor de propiedad |
<thead> + <tbody> | Fila de encabezado + filas de datos |
El convertidor lee la primera fila como esquema y cada fila siguiente como datos. Si la tabla usa <thead> y <tbody>, la fila de encabezado viene de <thead> y las filas de datos de <tbody>.
Cuándo Convertir HTML a JSON
Web Scraping
Las páginas HTML muestran datos en tablas para legibilidad humana, pero necesitas esos datos como JSON estructurado para uso programático. Convertir una tabla HTML a JSON te da un arreglo de objetos que puedes filtrar, ordenar y transformar sin parsear HTML tú mismo.
Migración de Datos
Los sistemas heredados frecuentemente exportan reportes como páginas HTML. Si necesitas importar esos datos a un sistema moderno, convertir las tablas HTML a JSON es más rápido que escribir un parser personalizado para cada formato de exportación heredado.
Soluciones Temporales de API
Algunos sitios web exponen datos solo como tablas HTML, no como APIs JSON. Convertir el HTML a JSON en tu navegador te permite extraer los datos sin golpear el servidor o lidiar con restricciones CORS.
Procesamiento de Documentos
Los documentos PDF y HTML contienen datos tabulares que necesitan ser extraídos. Convertir la representación HTML a JSON te da una estructura de datos limpia que puedes alimentar a herramientas de analíticas o bases de datos.
Manejo de Casos Extremos
Celdas Vacías
Las tablas HTML frecuentemente tienen elementos <td></td> vacíos para datos faltantes. El convertidor produce strings vacíos para estas celdas en la salida JSON. Puedes post-procesar el JSON para reemplazar strings vacíos con null si tu aplicación lo espera.
Detección de Fila de Encabezado
El convertidor asume que la primera fila es el encabezado. Las tablas que comienzan con una fila de título o caption necesitan que el título se remueva antes de la conversión. Las tablas sin una fila de encabezado clara obtienen nombres de columna genéricos.
Múltiples Tablas
Las páginas HTML frecuentemente contienen múltiples tablas. El convertidor procesa cada tabla por separado. Si pegas HTML con varias tablas, obtienes un arreglo JSON por cada una. Selecciona la tabla que necesitas de la salida.
Limitaciones
Las tablas HTML son presentación, no datos. El convertidor extrae contenido pero pierde estilos, enlaces, imágenes y formato en línea. Si una celda contiene tanto texto como un enlace, obtienes el contenido del texto sin la URL. Para extracción de contenido enriquecido, necesitas un scraper más sofisticado que pueda parsear la estructura DOM completa.