Parse excel(xlsx/xls/csv) to other format(csv, json).
Project description
xlparser
Parse excel(xlsx/xls/csv) to other format(csv, json).
Warning: some old versions of xls are not supported.
Install
pip install xlparser
pip3 install xlparser
Usage
$ xlparser -h
Usage:
# Convert xlsx to csv
$ xlparser.py source.xlsx [options] > new.csv
# Convert csv to csv
$ xlparser.py source.csv [options] > new.csv
# Convert csv to json
$ xlparser.py source.csv [options] > new.json
options:
-h For help.
-csv Export to csv(by default).
-json Export to json.
Examples:
$ xlparser src.xlsx | tee test.csv
name, age
李雷,15
小花,16
$ xlparser src.xlsx | xcut -f name
name
李雷
小花
$ xlparser src.xlsx | xcut -f age,name
age,name
15,李雷
16,小花
CLI Usage
Convert xlsx to csv
$ xlparser src.xlsx | tee test.csv
name, age
李雷,15
小花,16
Convert csv to json
$ xlparser test.csv -json | tee test.json
[["name", "age"], ["李雷", "15"], ["小花", "16"]]
Module Usage
Parse any type of file
The parse
function supports the following file format:
def parse(src):
if src.endswith('.xls'):
return parseXls(src)
if src.endswith('.xlsx'):
return parseXlsx(src)
if src.endswith('.csv'):
return parseCsv(src)
parse
any type of file to rows:
>>> from xlparser import parse, saveCsv
>>> rows = parse('some.xlsx')
>>> list(rows)
[['foo', 'bar'], ['看', '我', '变']]
Save rows to csv
>>> saveCsv(rows, 'test.csv')
Csv operation
>>> from xlparser import *
>>> rows = [('foo','bar'), ('看','我','变')]
>>> saveCsv(rows, 'test.csv')
>>> list(parseCsv('test.csv'))
[['foo', 'bar'], ['看', '我', '变']]
Zip operation
>>> from xlparser import loadZip
>>> zf = loadZip('test.xlsx')
>>> print(zf.filelist)
......
>>> zf.extract('xl/media/image1.png', '/tmp')
>>> os.rename('/tmp/'+'xl/media/image1.png', './image1.png')
Required
- python>=3.5
- xlrd: required by xls
- openpyxl>=2.5.4: required by xlsx
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
xlparser-0.2.16.tar.gz
(4.3 kB
view hashes)
Built Distribution
Close
Hashes for xlparser-0.2.16-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 374a72963250d8cccac7649adc479d8685152ffa9960ca07cc1c40b92f11de7d |
|
MD5 | 20059bbfc85a5e9a19abb6cd0c20c5a1 |
|
BLAKE2b-256 | e7cef978339f2237993949fcfccd65d1e4486dd8202331aebe80ee45434ef10d |