{ "info": { "author": "C.W.", "author_email": "wangc_2011@hotmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Office/Business", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "================================================================================\npyexcel-xlsxw - Let you focus on data, instead of xlsx format\n================================================================================\n\n.. image:: https://raw.githubusercontent.com/pyexcel/pyexcel.github.io/master/images/patreon.png\n :target: https://www.patreon.com/pyexcel\n\n.. image:: https://api.travis-ci.org/pyexcel/pyexcel-xlsxw.svg?branch=master\n :target: http://travis-ci.org/pyexcel/pyexcel-xlsxw\n\n.. image:: https://codecov.io/gh/pyexcel/pyexcel-xlsxw/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/pyexcel/pyexcel-xlsxw\n\n.. image:: https://img.shields.io/gitter/room/gitterHQ/gitter.svg\n :target: https://gitter.im/pyexcel/Lobby\n\n.. image:: https://readthedocs.org/projects/pyexcel-xlsxw/badge/?version=latest\n :target: http://pyexcel-xlsxw.readthedocs.org/en/latest/\n\n**pyexcel-xlsxw** is a tiny wrapper library to write data in xlsx and xlsm fromat using xlsxwriter. You are likely to use it with `pyexcel `__.\n\nKnown constraints\n==================\n\nFonts, colors and charts are not supported.\n\nInstallation\n================================================================================\n\n\nYou can install pyexcel-xlsxw via pip:\n\n.. code-block:: bash\n\n $ pip install pyexcel-xlsxw\n\n\nor clone it and install it:\n\n.. code-block:: bash\n\n $ git clone https://github.com/pyexcel/pyexcel-xlsxw.git\n $ cd pyexcel-xlsxw\n $ python setup.py install\n\nSupport the project\n================================================================================\n\nIf your company has embedded pyexcel and its components into a revenue generating\nproduct, please `support me on patreon `_ to\nmaintain the project and develop it further.\n\nIf you are an individual, you are welcome to support me too on patreon and for however long\nyou feel like. As a patreon, you will receive\n`early access to pyexcel related contents `_.\n\nWith your financial support, I will be able to invest\na little bit more time in coding, documentation and writing interesting posts.\n\n\nUsage\n================================================================================\n\nAs a standalone library\n--------------------------------------------------------------------------------\n\nWrite to an xlsx file\n********************************************************************************\n\n\n\nHere's the sample code to write a dictionary to an xlsx file:\n\n.. code-block:: python\n\n >>> from pyexcel_xlsxw import save_data\n >>> data = OrderedDict() # from collections import OrderedDict\n >>> data.update({\"Sheet 1\": [[1, 2, 3], [4, 5, 6]]})\n >>> data.update({\"Sheet 2\": [[\"row 1\", \"row 2\", \"row 3\"]]})\n >>> save_data(\"your_file.xlsx\", data)\n\n\n\nHere's the sample code to help you read the data back. You will need to install pyexcel-xls or pyexcel-xlsx.\n\n.. code-block:: python\n\n >>> from pyexcel_io import get_data\n >>> data = get_data(\"your_file.xlsx\")\n >>> import json\n >>> print(json.dumps(data))\n {\"Sheet 1\": [[1, 2, 3], [4, 5, 6]], \"Sheet 2\": [[\"row 1\", \"row 2\", \"row 3\"]]}\n\n\nWrite an xlsx to memory\n********************************************************************************\n\nHere's the sample code to write a dictionary to an xlsx file:\n\n.. code-block:: python\n\n >>> from pyexcel_xlsxw import save_data\n >>> data = OrderedDict()\n >>> data.update({\"Sheet 1\": [[1, 2, 3], [4, 5, 6]]})\n >>> data.update({\"Sheet 2\": [[7, 8, 9], [10, 11, 12]]})\n >>> io = StringIO()\n >>> save_data(io, data)\n >>> # do something with the io\n >>> # In reality, you might give it to your http response\n >>> # object for downloading\n\n\n\n\n\nHere's the sample code to help you read the data back. You will need to install pyexcel-xls or pyexcel-xlsx.\n\n.. code-block:: python\n\n >>> # This is just an illustration\n >>> # In reality, you might deal with xlsx file upload\n >>> # where you will read from requests.FILES['YOUR_XLSX_FILE']\n >>> data = get_data(io, 'xlsx')\n >>> print(json.dumps(data))\n {\"Sheet 1\": [[1, 2, 3], [4, 5, 6]], \"Sheet 2\": [[7, 8, 9], [10, 11, 12]]}\n\n\n\nAs a pyexcel plugin\n--------------------------------------------------------------------------------\n\nNo longer, explicit import is needed since pyexcel version 0.2.2. Instead,\nthis library is auto-loaded. So if you want to read data in xlsx format,\ninstalling it is enough.\n\n\nLet's assume we have data as the following.\n\n.. code-block:: python\n\n >>> import pyexcel as pe\n >>> sheet = pe.get_book(file_name=\"your_file.xlsx\")\n >>> sheet\n Sheet 1:\n +---+---+---+\n | 1 | 2 | 3 |\n +---+---+---+\n | 4 | 5 | 6 |\n +---+---+---+\n Sheet 2:\n +-------+-------+-------+\n | row 1 | row 2 | row 3 |\n +-------+-------+-------+\n\n\nWriting to an xlsx file\n********************************************************************************\n\nHere is the sample code:\n\n.. code-block:: python\n\n >>> sheet.save_as(\"another_file.xlsx\")\n\n\nWriting to a StringIO instance\n********************************************************************************\n\nYou need to pass a StringIO instance to Writer:\n\n.. code-block:: python\n\n >>> data = [\n ... [1, 2, 3],\n ... [4, 5, 6]\n ... ]\n >>> io = StringIO()\n >>> sheet = pe.Sheet(data)\n >>> io = sheet.save_to_memory(\"xlsx\", io)\n >>> # then do something with io\n >>> # In reality, you might give it to your http response\n >>> # object for downloading\n\n\nLicense\n================================================================================\n\nNew BSD License\n\nDeveloper guide\n==================\n\nDevelopment steps for code changes\n\n#. git clone https://github.com/pyexcel/pyexcel-xlsxw.git\n#. cd pyexcel-xlsxw\n\nUpgrade your setup tools and pip. They are needed for development and testing only:\n\n#. pip install --upgrade setuptools pip\n\nThen install relevant development requirements:\n\n#. pip install -r rnd_requirements.txt # if such a file exists\n#. pip install -r requirements.txt\n#. pip install -r tests/requirements.txt\n\nOnce you have finished your changes, please provide test case(s), relevant documentation\nand update CHANGELOG.rst.\n\n.. note::\n\n As to rnd_requirements.txt, usually, it is created when a dependent\n library is not released. Once the dependecy is installed\n (will be released), the future\n version of the dependency in the requirements.txt will be valid.\n\n\nHow to test your contribution\n------------------------------\n\nAlthough `nose` and `doctest` are both used in code testing, it is adviable that unit tests are put in tests. `doctest` is incorporated only to make sure the code examples in documentation remain valid across different development releases.\n\nOn Linux/Unix systems, please launch your tests like this::\n\n $ make\n\nOn Windows systems, please issue this command::\n\n > test.bat\n\nHow to update test environment and update documentation\n---------------------------------------------------------\n\nAdditional steps are required:\n\n#. pip install moban\n#. git clone https://github.com/moremoban/setupmobans.git # generic setup\n#. git clone https://github.com/pyexcel/pyexcel-commons.git commons\n#. make your changes in `.moban.d` directory, then issue command `moban`\n\nWhat is pyexcel-commons\n---------------------------------\n\nMany information that are shared across pyexcel projects, such as: this developer guide, license info, etc. are stored in `pyexcel-commons` project.\n\nWhat is .moban.d\n---------------------------------\n\n`.moban.d` stores the specific meta data for the library.\n\nAcceptance criteria\n-------------------\n\n#. Has Test cases written\n#. Has all code lines tested\n#. Passes all Travis CI builds\n#. Has fair amount of documentation if your change is complex\n#. Please update CHANGELOG.rst\n#. Please add yourself to CONTRIBUTORS.rst\n#. Agree on NEW BSD License for your contribution\n\n\n\nChange log\n================================================================================\n\n0.4.2 - 23.10.2017\n--------------------------------------------------------------------------------\n\nupdated\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n#. pyexcel `#105 `_, remove gease\n from setup_requires, introduced by 0.4.1.\n#. remove python2.6 test support\n\n0.4.1 - 20.10.2017\n--------------------------------------------------------------------------------\n\nadded\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n#. `#103 `_, include LICENSE file\n in MANIFEST.in, meaning LICENSE file will appear in the released tar ball.\n\n0.4.0 - 19.06.2017\n--------------------------------------------------------------------------------\n\nUpdated\n********************************************************************************\n\n#. pyexcel-io plugin interface now updated to use\n `lml `_.\n\n\n0.3.2 - 03.03.2017\n--------------------------------------------------------------------------------\n\n#. Remove the false claim that this library writes xlsm\n\n0.3.1 - 24.02.2017\n--------------------------------------------------------------------------------\n\n#. `#1 `_,\n Feature request: support Workbook options in XLSXWriter.open()\n\n0.3.0 - 22.12.2016\n--------------------------------------------------------------------------------\n\n#. Support pyexcel-io v0.3.0\n\n0.0.1 - 26.08.2016\n--------------------------------------------------------------------------------\n\n#. initial release to see if xlsxwriter would write xlsx significantly faster\n than openpyxl\n\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/pyexcel/pyexcel-xlsxw/archive/0.4.2.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/pyexcel/pyexcel-xlsxw", "keywords": "xlsxpython", "license": "New BSD", "maintainer": "", "maintainer_email": "", "name": "pyexcel-xlsxw", "package_url": "https://pypi.org/project/pyexcel-xlsxw/", "platform": "", "project_url": "https://pypi.org/project/pyexcel-xlsxw/", "project_urls": { "Download": "https://github.com/pyexcel/pyexcel-xlsxw/archive/0.4.2.tar.gz", "Homepage": "https://github.com/pyexcel/pyexcel-xlsxw" }, "release_url": "https://pypi.org/project/pyexcel-xlsxw/0.4.2/", "requires_dist": null, "requires_python": "", "summary": "A wrapper library to write data in xlsx and xlsm format", "version": "0.4.2" }, "last_serial": 3273004, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "a7a80294d2fdac37f29f91fbe9ff84fd", "sha256": "bda0f7850a62b6b3802b2e58960f1d3946db4f164c6fdbf1996a014b4325b7b2" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.0.1.zip", "has_sig": false, "md5_digest": "a7a80294d2fdac37f29f91fbe9ff84fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12195, "upload_time": "2016-08-26T22:29:08", "url": "https://files.pythonhosted.org/packages/0d/69/740882c8fa31efadee68e16fb0e530118ec2baf492b06fae48af74541911/pyexcel-xlsxw-0.0.1.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "2e6865a6b3080ed0f5a48a8c75c7d244", "sha256": "ebe09b13c8cdf141daa2e86496d8f6eb568fec49a7e5556233399e48cb70e6c7" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.3.0.tar.gz", "has_sig": false, "md5_digest": "2e6865a6b3080ed0f5a48a8c75c7d244", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5735, "upload_time": "2016-12-22T10:35:45", "url": "https://files.pythonhosted.org/packages/0d/5e/03f1c3bc935f6fca11adb515db31d80915654438a74aa462fe586cbdaf66/pyexcel-xlsxw-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "73c38feab35d4490c558a4dc907d8bba", "sha256": "5b059063266f5212e76e498a2cbeedce54d904d6889bb9d24eda813292a9e8c3" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.3.1.tar.gz", "has_sig": false, "md5_digest": "73c38feab35d4490c558a4dc907d8bba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5896, "upload_time": "2017-02-24T09:51:54", "url": "https://files.pythonhosted.org/packages/8f/31/81ef16ca3143a12f2fe0ff92c01ee9f95ff91fbf46afd73fdbfbfa9683fe/pyexcel-xlsxw-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "cbb71f705eec60cef96066aa54dd5dbb", "sha256": "4d7314bd4a32b6a97269a94f726f70692c0de376b2cc66c429d1c5f491b30b03" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.3.2.tar.gz", "has_sig": false, "md5_digest": "cbb71f705eec60cef96066aa54dd5dbb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5900, "upload_time": "2017-03-03T08:31:01", "url": "https://files.pythonhosted.org/packages/5b/dd/f5498898719e5e1f8c7bba557c39af8d10312c664ca027f86e919942321e/pyexcel-xlsxw-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "f092da760c80927b79a7cccf760b8694", "sha256": "07559a392d2a43609dbc3a7484de48e1c6f8f2a3423e29ec6e494c12b34aa7ba" }, "downloads": -1, "filename": "pyexcel_xlsxw-0.4.0-py2-none-any.whl", "has_sig": false, "md5_digest": "f092da760c80927b79a7cccf760b8694", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 10386, "upload_time": "2017-06-19T11:27:28", "url": "https://files.pythonhosted.org/packages/88/26/0111f9073bdc6467f5f275d1b441bd76f66f856f6d40413a8a2516ebc772/pyexcel_xlsxw-0.4.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f6a03d86b2e4512a99112755b3365bf3", "sha256": "dea20015a3126af63bebaa02de5e54d4ce0846a36fe00cdd626fe797e99a7fe9" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.4.0.tar.gz", "has_sig": false, "md5_digest": "f6a03d86b2e4512a99112755b3365bf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6392, "upload_time": "2017-06-19T11:27:23", "url": "https://files.pythonhosted.org/packages/01/87/f547fc72b17386f999729a7c1e4c5658a058834c63f881a5232406f55913/pyexcel-xlsxw-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "3b7f79634bf760b9e2bf2ebde8f749d2", "sha256": "97a9261e034ce12f57f1937ec97acb757771389f91cc02e7569d3f6f326a7a05" }, "downloads": -1, "filename": "pyexcel_xlsxw-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "3b7f79634bf760b9e2bf2ebde8f749d2", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10936, "upload_time": "2017-10-20T07:20:44", "url": "https://files.pythonhosted.org/packages/f9/c7/336041e2462e8ccaf3e620e95577eb71b18c53cf456aa094c788d948bc06/pyexcel_xlsxw-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d8ccc058e92abac639608e6f9c7c1b2d", "sha256": "b3ecf9718632af14be46c2bde8a6abef4616f4de6be0865715f7a5d091a7e112" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.4.1.tar.gz", "has_sig": false, "md5_digest": "d8ccc058e92abac639608e6f9c7c1b2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8062, "upload_time": "2017-10-20T07:20:38", "url": "https://files.pythonhosted.org/packages/5e/d3/ccdb56d99a3029e3c55821e72c70ce04bccc279ca52547138c5aa9d73851/pyexcel-xlsxw-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "09f7384aff6135338cf1d4116c56803c", "sha256": "2e882741ab81faa8aa2f514030e7dd1d9e6d53091b607e6ac0f50675d7f571dc" }, "downloads": -1, "filename": "pyexcel_xlsxw-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "09f7384aff6135338cf1d4116c56803c", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 11258, "upload_time": "2017-10-23T18:53:47", "url": "https://files.pythonhosted.org/packages/98/75/80ebb215d6d99f3ae6499b9b0008cb6cda783a2bffcbe681bbc8200dcb12/pyexcel_xlsxw-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "46938cb7e69bab9bd4eb9999e16bc162", "sha256": "b4384ac514bb4bbe4b0735fe6f461b97f57f4ad1c6382ec749c9af333d17b3e1" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.4.2.tar.gz", "has_sig": false, "md5_digest": "46938cb7e69bab9bd4eb9999e16bc162", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8461, "upload_time": "2017-10-23T18:53:45", "url": "https://files.pythonhosted.org/packages/27/b6/3f829ceaae60ec6e242064d8c8187fd30746d8d77b7477bed611ac52718d/pyexcel-xlsxw-0.4.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "09f7384aff6135338cf1d4116c56803c", "sha256": "2e882741ab81faa8aa2f514030e7dd1d9e6d53091b607e6ac0f50675d7f571dc" }, "downloads": -1, "filename": "pyexcel_xlsxw-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "09f7384aff6135338cf1d4116c56803c", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 11258, "upload_time": "2017-10-23T18:53:47", "url": "https://files.pythonhosted.org/packages/98/75/80ebb215d6d99f3ae6499b9b0008cb6cda783a2bffcbe681bbc8200dcb12/pyexcel_xlsxw-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "46938cb7e69bab9bd4eb9999e16bc162", "sha256": "b4384ac514bb4bbe4b0735fe6f461b97f57f4ad1c6382ec749c9af333d17b3e1" }, "downloads": -1, "filename": "pyexcel-xlsxw-0.4.2.tar.gz", "has_sig": false, "md5_digest": "46938cb7e69bab9bd4eb9999e16bc162", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8461, "upload_time": "2017-10-23T18:53:45", "url": "https://files.pythonhosted.org/packages/27/b6/3f829ceaae60ec6e242064d8c8187fd30746d8d77b7477bed611ac52718d/pyexcel-xlsxw-0.4.2.tar.gz" } ] }