Skip to main content

Convert Excel files to delimited text

Project description

excel2txt

Convert Excel files to delimited text

Synopsis

For usage, run excel2txt --help:

usage: excel2txt [-h] [-o str] [-d str] [-D] [-n] [--version] FILE [FILE ...]

Convert Excel files to delimited text

positional arguments:
  FILE                  Input Excel file(s)

optional arguments:
  -h, --help            show this help message and exit
  -o str, --outdir str  Output directory (default:
                        /Users/kyclark/work/python/excel2txt-py)
  -d str, --delimiter str
                        Delimiter for output file (default: )
  -D, --mkdirs          Create separate directories for output files (default:
                        False)
  -n, --normalize       Normalize headers (default: False)
  --version             show program's version number and exit

Given one or more Excel files as positional parameters, the program will create an output text file in the given output directory (which defaults to the current working directory).

For example:

$ excel2txt tests/test1.xlsx
  1: tests/test1.xlsx
Done, see output in "/Users/kyclark/work/python/excel2txt-py".

Now you should have a file called "test1__sheet1.txt" in the current directory. You could use the "csvchk" program to see the structure of this file:

$ csvchk test1__sheet1.txt
// ****** Record 1 ****** //
name          : Ed
rank          : Captain
serial_number : 12345

If you are processing multiple files, you might find the "--mkdirs" option useful to put all the sheets from each workbook into a separate directories:

$ ./excel2txt.py tests/*.xlsx --outdir out --mkdirs
  1: tests/test1.xlsx
  2: tests/test2.xlsx
Done, see output in "/Users/kyclark/work/python/excel2txt-py/out".

In the "out" directory, there will be "test1" and "test2" directories:

$ find out -type f
out/test1/test1__sheet1.txt
out/test2/test2__sheet1.txt

You can use the "--delimiter" option to change the output file delimiter.

Column, file normalization

The "--normalize" option will alter the headers of each output file to lowercase values and remove non-alphanumeric characters or the underscore. This will also break "CamelCase" values into "snake_case."

This same normalization will be used to create the output file names so as to avoid any possibility of creating output files with illegal or difficult characters.

See also

csvkit, csvchk

Author

Ken Youens-Clark kyclark@gmail.com

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

excel2txt-0.2.1.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

excel2txt-0.2.1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file excel2txt-0.2.1.tar.gz.

File metadata

  • Download URL: excel2txt-0.2.1.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for excel2txt-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e6cb8552a5d7010edd2bdf1cc5fe39096f362763ede7ae1d610dec23a13ace79
MD5 a0f817dfb69c44aa07f238243ca77a13
BLAKE2b-256 fd2790034010c806223b53825f6725a88562870d7df00189fe2ae57e950847b4

See more details on using hashes here.

File details

Details for the file excel2txt-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: excel2txt-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for excel2txt-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9552ec66e564844271965f959830af47a4a1ae768eadcc70dca2e4d16bacb5ba
MD5 db022623ceeb360e0edd833b28d86db1
BLAKE2b-256 dba61e1b8efa1ac791d64f494bf955bda5a1aac111fc650816e0dc79e452a1fd

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