{"id":15008844,"url":"https://github.com/pydpiper/pylightxl","last_synced_at":"2025-05-16T03:05:50.204Z","repository":{"id":42186994,"uuid":"227280133","full_name":"PydPiper/pylightxl","owner":"PydPiper","description":"A light weight, zero dependency, minimal functionality excel read/writer python library","archived":false,"fork":false,"pushed_at":"2024-01-20T16:57:09.000Z","size":17033,"stargazers_count":308,"open_issues_count":26,"forks_count":47,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-05-16T03:05:41.675Z","etag":null,"topics":["api","data-analysis","excel","microsoft","office","pypi","python","python-library","python2","python3"],"latest_commit_sha":null,"homepage":"https://pylightxl.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PydPiper.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":"ViksCreativeContent","open_collective":null,"ko_fi":null,"tidelift":"pypi/pylightxl","community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null}},"created_at":"2019-12-11T04:59:37.000Z","updated_at":"2025-04-25T20:17:13.000Z","dependencies_parsed_at":"2024-01-16T10:36:49.285Z","dependency_job_id":"aaa71b8b-65f3-486b-a564-23c36f29f972","html_url":"https://github.com/PydPiper/pylightxl","commit_stats":{"total_commits":263,"total_committers":20,"mean_commits":13.15,"dds":"0.17490494296577952","last_synced_commit":"74c24780024d99d603e09677bece11116825dbd8"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PydPiper%2Fpylightxl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PydPiper%2Fpylightxl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PydPiper%2Fpylightxl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PydPiper%2Fpylightxl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PydPiper","download_url":"https://codeload.github.com/PydPiper/pylightxl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254459088,"owners_count":22074605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","data-analysis","excel","microsoft","office","pypi","python","python-library","python2","python3"],"created_at":"2024-09-24T19:20:56.176Z","updated_at":"2025-05-16T03:05:45.189Z","avatar_url":"https://github.com/PydPiper.png","language":"Python","funding_links":["https://patreon.com/ViksCreativeContent","https://tidelift.com/funding/github/pypi/pylightxl","https://tidelift.com/"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"doc/source/_static/header_logo.gif\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://app.circleci.com/pipelines/github/PydPiper/pylightxl\" alt=\"build\"\u003e\n        \u003cimg src=\"https://img.shields.io/circleci/build/gh/PydPiper/pylightxl\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://codecov.io/gh/PydPiper/pylightxl\" alt=\"codecov\"\u003e\n        \u003cimg src=\"https://img.shields.io/codecov/c/github/PydPiper/pylightxl/master\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://pypi.org/project/pylightxl/\" alt=\"pypi\"\u003e\n        \u003cimg src=\"https://img.shields.io/pypi/v/pylightxl\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://pypi.org/project/pylightxl/\" alt=\"downloads\"\u003e\n        \u003cimg src=\"https://img.shields.io/pypi/dm/pylightxl\" /\u003e\n    \u003c/a\u003e\n    \u003ca alt=\"python\"\u003e\n        \u003cimg src=\"https://img.shields.io/pypi/pyversions/pylightxl\" /\u003e\n    \u003c/a\u003e\n    \u003ca alt=\"license\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/license/PydPiper/pylightxl\" /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch2 align=\"center\"\u003e\n    \u003cp\u003e\n        pylightxl - A Light Weight Excel Reader/Writer\n    \u003c/p\u003e\n    \u003ca href=\"https://pylightxl.readthedocs.io\"\u003e\n        Documentation\n    \u003c/a\u003e\n\u003c/h2\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca\u003e\n        A light weight, zero dependency (only standard libs used), to the point (no bells and whistles) \n        Microsoft Excel reader/writer python 2.7.18 - 3+ library.\n    \u003c/a\u003e\n    \u003cimg src=\"doc/source/_static/readme_demo.gif\" /\u003e\n\u003c/p\u003e\n\n\n**Please help us spread the word about pylightxl to the community by voting for pylightxl to be added\nto python-awesome list. Follow the [LINK](https://github.com/vinta/awesome-python/pull/1449) and upvote\nthe pull request in the top right corner**\n\nThe project is associated with [Tidelift](https://tidelift.com/). Please consider supporting open-source\ncontributions by using the packages with Tidelift's subscription today!\n\nProject featured on [PythonBytes Podcast Episode #165](https://pythonbytes.fm/episodes/show/165/ranges-as-dictionary-keys-oh-my)\n\n---\n\n#### **High-Level Feature Summary**\n\n- **Reader**\n\n    - supports Microsoft Excel 2004+ files (``.xlsx``, ``.xlsm``) and ``.csv`` files\n    - read files via str path, pathlib path or file objects\n    - read all or selective sheets\n    - read type converted cell value (string, int, float), formula, comments, and named ranges\n\n- **Database**\n\n    - call cell value by row/col ID, excel address, or range\n    - call an entire row/col or a semi-structured table based on user-defined headers\n\n- **Writer**\n\n    - write to new excel file (write excel files without having excel on your machine)\n    - write to existing excel files (see limitations below)\n\n#### **Limitations**\n\nAlthough every effort was made to support a variety of users, the following limitations should be read carefully:\n\n- Does not support ``.xls`` files (Microsoft Excel 2003 and older files)\n\n- Writer does not support anything other than cell data (no graphs, images, macros, formatting)\n\n- Does not support worksheet cell data more than 536,870,912 cells (32-bit list limitation), please use 64-bit if\n  more data storage is required.\n\n---\n\n#### **Why pylightxl over pandas/openpyxl/xlrd**\n\n- **Zero non-standard library dependencies!** \n\n    - No compatibility/version control issues.\n\n- **Python2.7.18 to Python3+ support for life!** \n\n    - Don't worry about which python version you are using, pylightxl will support it for life\n\n- **Light-weight single source code file** \n\n    - Want your project remain truly dependent-less? Copy the single source file into your project without any extra\n      dependency issues or setup.\n    - Do you struggle with other libraries weighing your projects down due to their very large size? Pylightxl's\n      single source file size and zero dependency will not weigh your project down (preferable for django apps)\n    - Do you struggle with ``pyinstaller`` or other ``exe`` wrappers failing to build or building to very large\n      packages? Pylightxl will not cause any build errors and will not add to your build size since it has zero\n      dependencies and a small lib size.\n    - Do you struggle with download restrictions at your company? Copy the entire pylightxl source from 1 single file\n      and use it in your project.\n\n- **100% test-driven development for highest reliability/maintainability that aims for 100% coverage on all supported versions**\n\n    - Pylightxl aims to test all of its features, however unforeseen edge cases can occur when receiving excel files\n      created by non-microsoft excel. We actively monitor issues to add support for these edge cases should they arise.\n\n- **API aimed to be user friendly and intuitive and well documented. Structure: database \u003e worksheet \u003e indexing**\n\n    - ``db.ws('Sheet1').index(row=1,col=2)``  or ``db.ws('Sheet1').address(address='B1')``\n    - ``db.ws('Sheet1').row(1)`` or ``db.ws('Sheet1').col(1)``\n\n---\n\n#### **Setup**\npylightxl is officially published on [pypi.org](https://pypi.org), however one of the\nkey features of pylightxl is that it is packed light in case the user has pip\nand/or download restrictions, see [docs - installation](https://pylightxl.readthedocs.io/en/latest/installation.html)\n\n```pip install pylightxl```\n\n---\n\n#### **pypi version 1.61**\n\n- bug-fix: occasionally a `\u003cdefinedName\u003e` tag would case pylightxl to add duplicate of the same worksheet, see issue [#72](https://github.com/PydPiper/pylightxl/issues/75)\n- update: updated date handling (code cleanup)\n- added feature: added python2 compatible typing to the library\n- added feature: added `io.StringIO` support to `readcsv`\n\nSee full history log of revisions: [Here](https://pylightxl.readthedocs.io/en/latest/revlog.html)\n\n---\n\n#### **Contact/Questions/Suggestions**\nIf you have any questions or feedback, we would love to hear from you - send us \na post directly on [GitHub](https://github.com/PydPiper/pylightxl/issues/new?assignees=\u0026labels=\u0026template=pylightxl-issue-template.md\u0026title=).\n\nWe try to keep an active lookout for users trying to solve Microsoft Excel related problems with\npython on Stack Overflow. Please help us build on the great community that python already is by\nhelping others get up to speed with pylightxl!\n\nFrom everyone in the pylightxl family, thank you for visiting!\n\n![logo](doc/source/_static/logo.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpydpiper%2Fpylightxl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpydpiper%2Fpylightxl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpydpiper%2Fpylightxl/lists"}