pytabify¶
Carga datos de prueba desde CSV, JSON y XLSX. Consulta cada celda por atributo o por nombre, actualiza la tabla y guarda el resultado desde Python o Robot Framework.
-
Instala y valida
Entra con
pipopoetryy confirma en segundos que la libreria carga bien. -
Empieza rapido
Carga un archivo, modifica una celda y exporta el resultado sin navegar por toda la API.
-
Usa ejemplos reales
La documentacion parte de flujos cubiertos por pruebas:
JSON -> CSV,XLSX -> JSONy Robot Framework. -
Resuelve errores comunes
Errores de
sheet_name, extensiones no soportadas, rutas invalidas o datos no rectangulares.
Una fila, un valor
table[0].nombre y table[0]["nombre"] devuelven el mismo valor. Si la columna se llama to_dict o contiene espacios, usa corchetes.
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¶
Cuando un caso de prueba usa una fila de datos, es útil conservar sus columnas en orden y acceder a ellas sin escribir un parser para cada formato:
- leer
CSV,JSONyXLSXcon 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.
Alcance
Cada columna representa un campo plano. La construcción de objetos de negocio anidados y el registro inmediato de folios generados pertenecen al proyecto que ejecuta las pruebas.
Lo que puedes hacer¶
*** 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¶
- Instala la libreria.
- Ejecuta el quickstart completo.
- Salta a
PythonoRobot Frameworksegun tu caso. - Usa la referencia solo cuando ya sepas el flujo que quieres resolver.
Mapa rapido¶
-
Instalacion
Prepara el entorno y valida que la libreria carga.
-
Inicio rapido
Sigue un flujo completo con input, ejecucion y output esperado.
-
Referencia
Consulta
DataTableCreator,DataTableSaveryDataTablesin recorrer toda la guia. -
Interna
Revisa arquitectura y extension solo si mantienes la herramienta.
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.