Skip to main content

Unified abstraction for handling xls, xlsx and CSV files in Python

Project description

# TableReader

TableReader is an unified abstraction for handling xls, xlsx and CSV files in Python. It also reads csv tables as unicode on request.

If you are familiar with csv.DictReader from the standard library, think of TableReader as DictReader on steroids.

from tablereader import TableReader

reader = TableReader("some_input.xlsx", sheet="The Data")
for row in reader:
    print row['valuecolumn']

In case you have csv and need unicode support:

reader = TableReader("unicode_input.csv", force_type="unicodecsv")
for row in reader:
    print row['valuecolumn']

If you want to strip out leading and trailing spaces while reading rows, you can:

reader = TableReader("input_with_whitespaces.csv", strip_whitespaces=True)
for row in reader:
    print row['valuecolumn']

And if for some reason you have a file with wrong type by line-ending (commonly found when sharing xls), override auto-detection:

reader = TableReader("wrong_named.xls", force_type="xlsx")
for row in reader:
    print row['valuecolumn']

Sometimes headers are not in the first line. So specify some header row search text and the entire row will be used as column name and all rows after are returned:

from tablereader import OffsetTableReader

reader = OffsetTableReader("wrong_named.xls", "BEGIN_DATA")
for row in reader:
    print row['valuecolumn']

The library has been tested on CPython 2.6, 2.7 and 3.4 as well as PyPy 2.4.1.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tablereader-1.0.3.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

tablereader-1.0.3-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file tablereader-1.0.3.tar.gz.

File metadata

  • Download URL: tablereader-1.0.3.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tablereader-1.0.3.tar.gz
Algorithm Hash digest
SHA256 77aea2f6588860bf79d64bf605eaaad69ccc881869ed266fe0f5521fe7d26d2b
MD5 6af713b529e905654d6de536f345cb32
BLAKE2b-256 d826785db0df4e95ed4d1c9013d19964c36e7a0a879ae1ba661094ff1c1310a0

See more details on using hashes here.

File details

Details for the file tablereader-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for tablereader-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a7ab809d536fb9acf3214699e3d8706269b52a995e076ac1247c89dacb887d36
MD5 c278a17bffef189f24e860fa2c347795
BLAKE2b-256 ca19a8fb25ae55984ca84e43bcdb6d7825abb4966f64011b9916242f43d7a599

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page