.. contents:: **excelrd**
:backlinks: top
:depth: 2
.. image:: https://badge.fury.io/py/excelrd.svg
:target: https://badge.fury.io/py/excelrd
:alt: PyPI package version
.. image:: https://img.shields.io/pypi/pyversions/excelrd.svg
:target: https://pypi.org/project/excelrd
:alt: Supported Python versions
.. image:: https://img.shields.io/pypi/implementation/excelrd.svg
:target: https://pypi.org/project/excelrd
:alt: Supported Python implementations
.. image:: https://github.com/thombashi/excelrd/actions/workflows/ci.yml/badge.svg
:target: https://github.com/thombashi/excelrd/actions/workflows/ci.yml
:alt: CI status of Linux/macOS/Windows
.. image:: https://coveralls.io/repos/github/thombashi/excelrd/badge.svg?branch=master
:target: https://coveralls.io/github/thombashi/excelrd?branch=master
:alt: Test coverage
excelrd
==================
``excelrd`` is a modified version of `xlrd <http://www.python-excel.org/>`__ to work for the latest Python versions.
``xlrd`` will not work in Python 3.9 or newer versions.
**Purpose**: Provide a library for developers to use to extract data from Microsoft Excel (tm) spreadsheet files. It is not an end-user tool.
**Author**: John Machin
**Licence**: BSD-style (see licences.py)
**Versions of Python supported**: 3.5+.
**Outside scope**: excelrd will safely and reliably ignore any of these
if present in the file:
- Charts, Macros, Pictures, any other embedded object. WARNING:
currently this includes embedded worksheets.
- VBA modules
- Formulas (results of formula calculations are extracted, of course).
- Comments
- Hyperlinks
- Autofilters, advanced filters, pivot tables, conditional formatting,
data validation
- Handling password-protected (encrypted) files.
Installation
============================================
::
pip install excelrd
Quick start
==================
Print all of the cell values in a specific sheet:
:Sample Code:
.. code:: python
import excelrd
def main():
book = excelrd.open_workbook("namesdemo.xls")
print("The number of worksheets is {}".format(book.nsheets))
print("Worksheet name(s): {}".format(", ".join(book.sheet_names())))
sh = book.sheet_by_index(2)
print("{}: rows={}, cols={}".format(sh.name, sh.nrows, sh.ncols))
for row_idx in range(sh.nrows):
for col_idx in range(sh.ncols):
cell = sh.cell(row_idx, col_idx)
if not cell.value:
continue
print("row={}, col={}, value={}".format(row_idx, col_idx, cell.value))
Transition from xlrd to excelrd
------------------------------------
Replace the import from ``import xlrd`` to ``import excelrd``:
.. code:: python
import excelrd as xlrd
Another quick start
------------------------------------
This will show the first, second and last rows
of each sheet in each file:
::
python PYDIR/scripts/runxlrd.py 3rows *blah*.xls
Acknowledgements
====================================
- This package started life as a translation from C into Python of
parts of a utility called "xlreader" developed by David Giffin. "This
product includes software developed by David Giffin
david@giffin.org."
- OpenOffice.org has truly excellent documentation of the Microsoft
Excel file formats and Compound Document file format, authored by
Daniel Rentz. See http://sc.openoffice.org
- U+5F20 U+654F: over a decade of inspiration, support, and interesting
decoding opportunities.
- Ksenia Marasanova: sample Macintosh and non-Latin1 files, alpha
testing
- Backporting to Python 2.1 was partially funded by Journyx - provider
of timesheet and project accounting solutions (http://journyx.com/).
- Provision of formatting information in version 0.6.1 was funded by
Simplistix Ltd (http://www.simplistix.co.uk/)
Documentation
==================
https://excelrd.rtfd.io/
Raw data
{
"_id": null,
"home_page": "https://github.com/thombashi/excelrd",
"name": "excelrd",
"maintainer": "Tsuyoshi Hombashi",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "tsuyoshi.hombashi@gmail.com",
"keywords": "xls,excel,spreadsheet,workbook",
"author": "John Machin",
"author_email": "sjmachin@lexicon.net",
"download_url": "https://files.pythonhosted.org/packages/38/f6/faf728706f396c7bc5acfdb734b9043de6cac1acae9f66db347f870eaf42/excelrd-3.0.0.tar.gz",
"platform": null,
"description": ".. contents:: **excelrd**\n :backlinks: top\n :depth: 2\n\n.. image:: https://badge.fury.io/py/excelrd.svg\n :target: https://badge.fury.io/py/excelrd\n :alt: PyPI package version\n\n.. image:: https://img.shields.io/pypi/pyversions/excelrd.svg\n :target: https://pypi.org/project/excelrd\n :alt: Supported Python versions\n\n.. image:: https://img.shields.io/pypi/implementation/excelrd.svg\n :target: https://pypi.org/project/excelrd\n :alt: Supported Python implementations\n\n.. image:: https://github.com/thombashi/excelrd/actions/workflows/ci.yml/badge.svg\n :target: https://github.com/thombashi/excelrd/actions/workflows/ci.yml\n :alt: CI status of Linux/macOS/Windows\n\n.. image:: https://coveralls.io/repos/github/thombashi/excelrd/badge.svg?branch=master\n :target: https://coveralls.io/github/thombashi/excelrd?branch=master\n :alt: Test coverage\n\nexcelrd\n==================\n``excelrd`` is a modified version of `xlrd <http://www.python-excel.org/>`__ to work for the latest Python versions.\n``xlrd`` will not work in Python 3.9 or newer versions.\n\n**Purpose**: Provide a library for developers to use to extract data from Microsoft Excel (tm) spreadsheet files. It is not an end-user tool.\n\n**Author**: John Machin\n\n**Licence**: BSD-style (see licences.py)\n\n**Versions of Python supported**: 3.5+.\n\n**Outside scope**: excelrd will safely and reliably ignore any of these\nif present in the file:\n\n- Charts, Macros, Pictures, any other embedded object. WARNING:\n currently this includes embedded worksheets.\n- VBA modules\n- Formulas (results of formula calculations are extracted, of course).\n- Comments\n- Hyperlinks\n- Autofilters, advanced filters, pivot tables, conditional formatting,\n data validation\n- Handling password-protected (encrypted) files.\n\n\nInstallation\n============================================\n::\n\n pip install excelrd\n\n\nQuick start\n==================\nPrint all of the cell values in a specific sheet:\n\n:Sample Code:\n .. code:: python\n\n import excelrd\n\n\n def main():\n book = excelrd.open_workbook(\"namesdemo.xls\")\n\n print(\"The number of worksheets is {}\".format(book.nsheets))\n print(\"Worksheet name(s): {}\".format(\", \".join(book.sheet_names())))\n\n sh = book.sheet_by_index(2)\n print(\"{}: rows={}, cols={}\".format(sh.name, sh.nrows, sh.ncols))\n\n for row_idx in range(sh.nrows):\n for col_idx in range(sh.ncols):\n cell = sh.cell(row_idx, col_idx)\n\n if not cell.value:\n continue\n\n print(\"row={}, col={}, value={}\".format(row_idx, col_idx, cell.value))\n\nTransition from xlrd to excelrd\n------------------------------------\nReplace the import from ``import xlrd`` to ``import excelrd``:\n\n.. code:: python\n\n import excelrd as xlrd\n\n\nAnother quick start\n------------------------------------\nThis will show the first, second and last rows\nof each sheet in each file:\n\n::\n\n python PYDIR/scripts/runxlrd.py 3rows *blah*.xls\n\n\nAcknowledgements\n====================================\n- This package started life as a translation from C into Python of\n parts of a utility called \"xlreader\" developed by David Giffin. \"This\n product includes software developed by David Giffin\n david@giffin.org.\"\n- OpenOffice.org has truly excellent documentation of the Microsoft\n Excel file formats and Compound Document file format, authored by\n Daniel Rentz. See http://sc.openoffice.org\n- U+5F20 U+654F: over a decade of inspiration, support, and interesting\n decoding opportunities.\n- Ksenia Marasanova: sample Macintosh and non-Latin1 files, alpha\n testing\n- Backporting to Python 2.1 was partially funded by Journyx - provider\n of timesheet and project accounting solutions (http://journyx.com/).\n- Provision of formatting information in version 0.6.1 was funded by\n Simplistix Ltd (http://www.simplistix.co.uk/)\n\n\nDocumentation\n==================\nhttps://excelrd.rtfd.io/\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "Library for developers to extract data from Microsoft Excel (tm) spreadsheet files",
"version": "3.0.0",
"project_urls": {
"Homepage": "https://github.com/thombashi/excelrd"
},
"split_keywords": [
"xls",
"excel",
"spreadsheet",
"workbook"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d3c335576d35825191871e33398d8a09c5896588ce8fb789f458b0dbd79934cf",
"md5": "deff9a2638b37230702f15cf9297e960",
"sha256": "21d76a5ee0992139fb7979d736ae28d17b6369d5be897fbd963c623dbf00acc4"
},
"downloads": -1,
"filename": "excelrd-3.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "deff9a2638b37230702f15cf9297e960",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 105693,
"upload_time": "2023-07-08T06:59:05",
"upload_time_iso_8601": "2023-07-08T06:59:05.963424Z",
"url": "https://files.pythonhosted.org/packages/d3/c3/35576d35825191871e33398d8a09c5896588ce8fb789f458b0dbd79934cf/excelrd-3.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "38f6faf728706f396c7bc5acfdb734b9043de6cac1acae9f66db347f870eaf42",
"md5": "12bfe3c249de8387de070928becc752c",
"sha256": "155ef640aca4f8bf2e6094a6093a9f968f3e968c88f231232b4bda4553752e35"
},
"downloads": -1,
"filename": "excelrd-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "12bfe3c249de8387de070928becc752c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 742814,
"upload_time": "2023-07-08T06:59:08",
"upload_time_iso_8601": "2023-07-08T06:59:08.509928Z",
"url": "https://files.pythonhosted.org/packages/38/f6/faf728706f396c7bc5acfdb734b9043de6cac1acae9f66db347f870eaf42/excelrd-3.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-08 06:59:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "thombashi",
"github_project": "excelrd",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "excelrd"
}