Saltar a contenido

pytabify

Convierte datos tabulares entre CSV, JSON y XLSX con una API Python corta y un wrapper oficial para Robot Framework.

Instalacion Inicio rapido Referencia

  • Instala y valida

    Entra con pip o poetry y confirma en segundos que la libreria carga bien.

    Ver instalacion

  • Empieza rapido

    Carga un archivo, modifica una celda y exporta el resultado sin navegar por toda la API.

    Ver quickstart

  • Usa ejemplos reales

    La documentacion parte de flujos cubiertos por pruebas: JSON -> CSV, XLSX -> JSON y Robot Framework.

    Ver ejemplos

  • Resuelve errores comunes

    Errores de sheet_name, extensiones no soportadas, rutas invalidas o datos no rectangulares.

    Ir a troubleshooting

Enfoque actual del proyecto

pytabify hoy es una libreria Python con adaptador oficial para Robot Framework. Si en el futuro aparece un CLI propio, se puede documentar como una entrada adicional sin romper esta estructura.

Introduccion

pytabify esta orientado a equipos tecnicos que necesitan cargar, validar, mutar y persistir datos tabulares sin construir conversiones manuales para cada formato.

Va dirigido principalmente a:

  • Desarrolladores Python

    Para scripts, fixtures, transformaciones simples y automatizacion de datos tabulares.

  • Equipos de QA

    Para pruebas automatizadas donde los datos viven en archivos o deben moverse entre formatos.

  • Usuarios de Robot Framework

    Para consumir tablas con acceso estable por fila, columna y adaptadores listos para keywords.

Que problema resuelve

Trabajar con datos tabulares pequenos o medianos suele degradarse rapido en codigo repetitivo:

  • leer CSV, JSON y XLSX con librerias distintas;
  • normalizar columnas y orden de esquema manualmente;
  • mutar filas sin romper consistencia entre registros;
  • exportar otra vez a un formato distinto;
  • repetir ese trabajo en Python y despues volver a modelarlo para Robot Framework.

pytabify encapsula ese flujo en un contrato tabular unico. La herramienta carga los registros, mantiene un esquema estable, permite enriquecer la tabla sin perder sincronizacion entre filas y la vuelve a persistir en el formato de salida que necesites.

Cuando encaja bien

Encaja mejor cuando el problema real es mover y ajustar datos tabulares con poco codigo, no construir un pipeline de datos complejo ni un motor ETL.

Lo que puedes hacer

Leer, mutar y exportar
from pytabify import DataTableCreator, DataTableSaver

datatable = DataTableCreator.from_file("people.json")
datatable[0]["country"] = "MX"

DataTableSaver.into_csv(datatable, "people.csv")
Crear una tabla y guardar a JSON
*** Settings ***
Library    pytabify.robot.PyTabifyLibrary    WITH NAME    PyTabify

*** Test Cases ***
Guardar tabla enriquecida
    ${records}=    Create List
    ...    ${{ {"name": "Alice", "age": 30} }}
    ...    ${{ {"name": "Bob", "age": 25} }}
    ${table}=    PyTabify.Create Data Table From Records    ${records}
    ${table}=    PyTabify.Set Data Table Value    ${table}    0    country    MX
    PyTabify.Save Data Table To Json    ${table}    people.json

Flujo recomendado

  1. Instala la libreria.
  2. Ejecuta el quickstart completo.
  3. Salta a Python o Robot Framework segun tu caso.
  4. Usa la referencia solo cuando ya sepas el flujo que quieres resolver.

Mapa rapido

  • Instalacion

    Prepara el entorno y valida que la libreria carga.

    Abrir instalacion

  • Inicio rapido

    Sigue un flujo completo con input, ejecucion y output esperado.

    Abrir quickstart

  • Referencia

    Consulta DataTableCreator, DataTableSaver y DataTable sin recorrer toda la guia.

    Abrir referencia

  • Interna

    Revisa arquitectura y extension solo si mantienes la herramienta.

    Abrir arquitectura

Por que la referencia no va primero

La API publica de pytabify es pequena. Para este tipo de herramienta, una referencia larga al inicio agrega friccion. El orden elegido privilegia uso real primero y detalle despues.

Cobertura de formatos

Formato Lectura Escritura Nota practica
CSV Si Si Los valores se leen como texto.
JSON Si Si Conserva bien tipos nativos simples.
XLSX Si Si Requiere sheet_name al leer.

Regla de oro

Si necesitas preservar int, bool y None durante el round-trip, prefiere JSON o XLSX. CSV es el formato mas interoperable, pero no conserva tipos de la misma forma.