Converts EAM CSV export to JSON
Project description
EAM CSV to JSON
=================
Example script for converting data from EAM, i.e. splunk, CSV files to json.
This provides a useful example of how to export and use data.
usage: eamcsv2json [-h] -i INPUT [-o OUTPUT] [-e ERRORS] [-l LOG] [-c CONFIG]
[-t TYPE_COLUMN]
EAM (Splunk) CSV to JSON conversion script meant to handle larger files with
potential errors. New lines and quotes are handled gracefully when data
fields are quoted in double quotes (") and escaped with backslash (\).
This is outside RFC-4180 specification
optional arguments:
-h, --help show this help message and exit
-i INPUT, --input INPUT
CSV file name to be read
-o OUTPUT, --output OUTPUT
(optional) Output file name; else stdout
-e ERRORS, --errors ERRORS
(optional) Error file name; when provided CSV 3 lines
of context will be printed. Default is content to log
file only
-l LOG, --log LOG (optional) Log file name; when provided log message
will go to file. Default is stderr
-c CONFIG, --config CONFIG
(optional) Configuration for type mappings; else first
row is considered for labels. When provided type
column setting is used
-t TYPE_COLUMN, --type-column TYPE_COLUMN
(optional) When config set use this column to expect
type mapping. Default 4
Install
-------
pip install eamcsv2json
Library
-------
Available for usage as library
from eamcsv2json.eamcsv2dict import EamCsv2Dict
type_mappings = {
'TypeA': ['field1', 'field2'],
'TypeB': ['fieldA', 'fieldB'],
}
converter = EamCsv2Dict('input.csv', 'error.csv', type_mappings, 2)
for a_dict in converter.covert():
print(a_dict)
Examples
-------
Convert data with first row as columns
eamcsv2json --input ./data/20180629_test2.csv -e ./errors.txt
Convert data with a type mapping and CSV error lines going to a file
eamcsv2json \
--input ./data/main10M.csv \
--errors ./data/main10M-errors.txt \
--config ./data/transforms.conf \
--output ./data/main10M.json
=================
Example script for converting data from EAM, i.e. splunk, CSV files to json.
This provides a useful example of how to export and use data.
usage: eamcsv2json [-h] -i INPUT [-o OUTPUT] [-e ERRORS] [-l LOG] [-c CONFIG]
[-t TYPE_COLUMN]
EAM (Splunk) CSV to JSON conversion script meant to handle larger files with
potential errors. New lines and quotes are handled gracefully when data
fields are quoted in double quotes (") and escaped with backslash (\).
This is outside RFC-4180 specification
optional arguments:
-h, --help show this help message and exit
-i INPUT, --input INPUT
CSV file name to be read
-o OUTPUT, --output OUTPUT
(optional) Output file name; else stdout
-e ERRORS, --errors ERRORS
(optional) Error file name; when provided CSV 3 lines
of context will be printed. Default is content to log
file only
-l LOG, --log LOG (optional) Log file name; when provided log message
will go to file. Default is stderr
-c CONFIG, --config CONFIG
(optional) Configuration for type mappings; else first
row is considered for labels. When provided type
column setting is used
-t TYPE_COLUMN, --type-column TYPE_COLUMN
(optional) When config set use this column to expect
type mapping. Default 4
Install
-------
pip install eamcsv2json
Library
-------
Available for usage as library
from eamcsv2json.eamcsv2dict import EamCsv2Dict
type_mappings = {
'TypeA': ['field1', 'field2'],
'TypeB': ['fieldA', 'fieldB'],
}
converter = EamCsv2Dict('input.csv', 'error.csv', type_mappings, 2)
for a_dict in converter.covert():
print(a_dict)
Examples
-------
Convert data with first row as columns
eamcsv2json --input ./data/20180629_test2.csv -e ./errors.txt
Convert data with a type mapping and CSV error lines going to a file
eamcsv2json \
--input ./data/main10M.csv \
--errors ./data/main10M-errors.txt \
--config ./data/transforms.conf \
--output ./data/main10M.json
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 Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eamcsv2json-1.0.5-py3-none-any.whl.
File metadata
- Download URL: eamcsv2json-1.0.5-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21e6a5332ef2061a6577f5127510bdb9f888377c3c245e4dfb0709c70d4c1354
|
|
| MD5 |
4a5e911ce244c2f0e72abf78848e1f4d
|
|
| BLAKE2b-256 |
e5d8c6017cbda4185687b479e9a82610b1841210e99a313a66ba91d1374502ce
|
File details
Details for the file eamcsv2json-1.0.5-py2-none-any.whl.
File metadata
- Download URL: eamcsv2json-1.0.5-py2-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d2c1c245cb8e1032e71b05594ac5eb7dcfd1d0a20114cd7325cc70dcbc67e02
|
|
| MD5 |
bfe920051b31f81ef94d5c2a6d52e6e2
|
|
| BLAKE2b-256 |
ec921c3812cb08ea5931db10ab9f6e8a09f406b9f958a33baa1054a8a780e0dc
|