Spanish banks' CSB norm 43 converter to OFX, Homebank, json, yaml, xls, xlsx, ods, csv, tsv
Project description
Español
Herramientas para convertir ficheros en formato usado por múltiples bancos españoles (norma 43 del Consejo Superior Bancario [CSB43] / Asociación Española de Banca [AEB43]) a otros formatos.
csb2format
Conversor de ficheros en CSB/AEB norma 43 a otros formatos.
Formatos soportados:
HTML (python2)
JSON
ODS: hoja de cálculo OpenDocument (python2)
CSV, TSV: valores separados por coma o tabulador (python2)
XLS: hoja de cálculo de Microsoft Excel (python2)
XLSX: hoja de cálculo OOXML (python2)
YAML
Opciones:
usage: csb2format [-h] [-s] [-df] [-d DECIMAL]
[-f {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}] [-v]
csbFile convertedFile
Convierte un fichero CSB43 a otro formato
optional arguments:
-h, --help show this help message and exit
-v, --version muestra la versión y termina
conversion arguments:
csbFile fichero csb43 ('-' para entrada estándar)
convertedFile fichero de destino ('-' para salida estándar)
-s, --strict modo estricto (por defecto: False)
-df, --dayfirst usa DDMMYY -día, mes, año- como formato de fecha al
interpretar los datos del fichero csb43 en lugar de
YYMMDD -año, mes, día- (por defecto: True)
-d DECIMAL, --decimal DECIMAL
establece el número de dígitos decimales a considerar
en el tipo de divisa (por defecto: 2)
-f {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}, --format {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}
Formato del fichero de salida (por defecto: ofx)
Ejemplos
Convertir a formato OFX:
$ csb2format transactions.csb transactions.ofx $ csb2format --format ofx transactions.csb transactions.ofx
o bien
$ csb2format transactions.csb - > transactions.ofx
Desde una aplicación de recuperación de datos a otro fichero
$ get_my_CSB_transactions | csb2format - transactions.ofx
Convertir a hoja de cálculo XLSX (Excel):
$ csb2format --format xlsx transactions.csb transactions.xlsx
Hojas de cálculo
Los ficheros en ODS y XLS se generan a modo de libro, conteniendo la primera hoja la información relativa a las cuentas, y las hojas siguientes conteniendo cada una los movimientos de cada cuenta.
En los ficheros XLSX toda la información está aplanada en una sola hoja.
En Python
Lee un archivo CSB43 e imprime el contenido equivalente en OFX
:::python
# OFX
from csb43 import csb_43, ofx
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# imprime a stdout
print ofx.convertFromCsb(csbFile)
Lee un archivo CSB e imprime el contenido equivalente a CSV de Homebank
:::python
# OFX
from csb43 import csb_43, homebank
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# imprime a stdout
for line in homebank.convertFromCsb(csbFile):
print line
Lee un archivo CSB e imprime el equivalente en un archivo de formato tabular o de diccionario
:::python
# OFX
from csb43 import csb_43, formats
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# imprime formato 'yaml' a stdout
o = format.convertFromCsb(csbFile, 'yaml')
print o.yaml
# escribe a archivo en formato 'xlsx'
o = format.convertFromCsb(csbFile, 'xlsx')
with open("movimientos.xlsx", "wb") as f:
f.write(o.xlsx)
English
Tools for converting from the Spanish banks’ format CSB norm 43 (CSB43).
csb2format
Convert a CSB/AEB norm 43 file to other file formats.
Supported formats:
OFX XML
HTML (python2)
JSON
ODS: OpenDocument spreadsheet (python2)
CSV, TSV: comma- or tab- separated values (python2)
XLS: Microsoft Excel spreadsheet (python2)
XLSX: OOXML spreadsheet (python2)
YAML
Options:
usage: csb2format [-h] [-s] [-df] [-d DECIMAL]
[-f {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}] [-v]
csbFile convertedFile
Convert a CSB43 file to another format
positional arguments:
csbFile a csb43 file ('-' for stdin)
convertedFile destination file ('-' for stdout)
optional arguments:
-h, --help show this help message and exit
-s, --strict strict mode
-df, --dayfirst use DDMMYY as date format while parsing the csb43 file
instead of YYMMDD (default: True)
-d DECIMAL, --decimal DECIMAL
set the number of decimal places for the currency type
(default: 2)
-f {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}, --format {csv,homebank,html,json,ods,ofx,tsv,xls,xlsx,yaml}
Format of the output file (default: ofx)
Examples
Converting to OFX format:
$ csb2format transactions.csb transactions.ofx $ csb2format --format ofx transactions.csb transactions.ofx
or
$ csb2format transactions.csb - > transactions.ofx
From another app to file
$ get_my_CSB_transactions | csb2format - transactions.ofx
Converting to XLSX spreadsheet format:
$ csb2format --format xlsx transactions.csb transactions.xlsx
Spreadsheets
ODS and XLS files are generated as books, with the first sheet containing the accounts information, and the subsequent sheets containing the transactions of each one of the accounts.
In XLSX files all the information is flattened in just one sheet.
Using Python
Parse a CSB43 file and print the equivalent OFX file
:::python
# OFX
from csb43 import csb_43, ofx
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# print to stdout
print ofx.convertFromCsb(csbFile)
Parse a CSB43 file and print the equivalent HomeBank CSV file
:::python
# OFX
from csb43 import csb_43, homebank
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# print to stdout
for line in homebank.convertFromCsb(csbFile):
print line
Parse a CSB43 file and print the equivalent in a tabular or dictionary-like file format
:::python
# OFX
from csb43 import csb_43, formats
csbFile = csb_43.File(open("movimientos.csb"), strict=False)
# print 'yaml' format to stdout
o = format.convertFromCsb(csbFile, 'yaml')
print o.yaml
# write 'xlsx' format to file
o = format.convertFromCsb(csbFile, 'xlsx')
with open("movimientos.xlsx", "wb") as f:
f.write(o.xlsx)
Instalación
Usando pip
$ pip install csb43
Usando easy_install
$ easy_install csb43
Si usas Windows, puedes descargar un fichero ejecutable desde el repositorio
Installing
Using pip
$ pip install csb43
Using easy_install
$ easy_install csb43
If you are using Windows, you can download an executable file from the repository
Changelog
0.3
Compatible with Python 3 (except “tablib” dependencies)
0.2.3
Fixed shebang header of csb2format
0.2.2
csb2format adapted to pyinstaller
Executable file for Windows
0.2.1
Trivial changes
0.2
Several bugfixes
Bidirectional use of objects (file -> object, object -> file)
Added conversion to spreadsheets, dict and tabular formats (thanks to tablib)
Localization to Spanish
Sphinx documentation
0.1
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file csb43-0.3.2.tar.gz.
File metadata
- Download URL: csb43-0.3.2.tar.gz
- Upload date:
- Size: 569.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25b5ed2baddf4c206a55f0d0ec03d6c2f89431e50bf5c0e6ca2f9f75d23ed66d
|
|
| MD5 |
2b65757bc03566364de01df071ea3004
|
|
| BLAKE2b-256 |
f7364e3aebef6f02009ac938d51c84a3c18faa38aefbcf55b9a2fc512af000c1
|