Skip to main content

Parse excel(xlsx/xls/csv) to other format(csv, xlsx, json).

Project description

xlparser

Parse excel(xlsx/xls/csv) to other format(csv, xlsx, json).

Install

pip install xlparser
# or
pip3 install xlparser

If you want to filter fields, it will be convenient with xcut.

pip install xcut 
# or
pip3 install xcut 

Usage

$ xlparser -h
xlparser [options] INFILE [OUTFILE]\n
    options:\n
        -h       For help.\n

CLI Usage

From xlsx to csv.

$ xlparser source.xlsx new.csv 

From csv to xlsx.

$ xlparser source.csv new.xlsx 

From csv to json.

$ xlparser source.csv new.json

From xlsx to csv(stdout).

$ xlparser source.xlsx | head 

$ xlparser src.xlsx | tee test.csv
name, score
"李雷,韩梅",15
小花,16

Use xcut to filter fields.

$ xlparser src.xlsx | xcut --from-csv -f name 
name
"李雷,韩梅"
小花

$ xlparser src.xlsx | xcut --from-csv -f score,name
score,name
15,"李雷,韩梅"
16,小花

Convert xlsx to csv

$ xlparser src.xlsx test.csv; 
$ cat test.csv
name, age
李雷,15
小花,16

Convert csv to json

$ xlparser test.csv test.json
[["name", "age"], ["李雷", "15"], ["小花", "16"]]

Module Usage

Parse any type of file

parse any type of file to rows:

>>> from xlparser import parse, saveCsv
>>> rows = parse('some.xlsx')
>>> list(rows)
[['foo', 'bar'], ['看', '我', '变']]

The parse function supports the following file formats: .csv, .xls, .xlsx .

Save to any type of file

Save rows to csv

>>> from xlparser import saveCsv
>>> rows = [['foo', 'bar'], ['看', '我', '变']]
>>> saveCsv(rows, 'test.csv')

Save rows to xlsx

>>> saveXlsx(rows, 'test.xlsx')

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

  1. python>=3.5
  2. xlrd: required by xls
  3. openpyxl>=2.5.4: required by xlsx

Project details


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.6.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

xlparser-0.6.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file xlparser-0.6.1.tar.gz.

File metadata

  • Download URL: xlparser-0.6.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Darwin/21.6.0

File hashes

Hashes for xlparser-0.6.1.tar.gz
Algorithm Hash digest
SHA256 2427ec8d777f67601890287e7ae2c90c565cae67db87a4348413c80e79d24040
MD5 e8cec5bc484956db394cc09247e32a17
BLAKE2b-256 7ea7c8927b7c2b29fc6f69710579ba30a4a4ff7c1441ed6313fa3eafbfea45fa

See more details on using hashes here.

File details

Details for the file xlparser-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: xlparser-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Darwin/21.6.0

File hashes

Hashes for xlparser-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 68e33c520ce6704817c713e765f35618f0b368e114b50ce4cb06ee259d8364dc
MD5 f9f0682203866f6a7a5b9e8ffb5b15fd
BLAKE2b-256 4ea2613514190de98111f738cf86534ffeb074d090148c1ecda10fe5308e7e30

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page