{ "info": { "author": "Aki Ariga", "author_email": "chezou@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Text Processing :: General" ], "description": "# tabula-py\n\n[![Build Status](https://travis-ci.org/chezou/tabula-py.svg?branch=master)](https://travis-ci.org/chezou/tabula-py)\n[![PyPI version](https://badge.fury.io/py/tabula-py.svg)](https://badge.fury.io/py/tabula-py)\n[![Patreon](https://img.shields.io/badge/patreon-donate-orange.svg)](https://www.patreon.com/chezou)\n\n\n`tabula-py` is a simple Python wrapper of [tabula-java](https://github.com/tabulapdf/tabula-java), which can read table of PDF.\nYou can read tables from PDF and convert into pandas's DataFrame. tabula-py also enables you to convert a PDF file into CSV/TSV/JSON file.\n\nYou can see [the example notebook](https://nbviewer.jupyter.org/github/chezou/tabula-py/blob/master/examples/tabula_example.ipynb) and try it on Google Colab.\n\n![](./example.png)\n\n\n# Requirements\n\n- Java\n - Confirmed working with Java 7, 8\n\n## OS\n\nI confirmed working on macOS and Ubuntu. But some people confirm it works on Windows 10. See also following the setting procedure.\n\n# Usage\n\n## Install\n\n```bash\npip install tabula-py\n```\n\nIf you want to become a contributor, you can install dependency after cloning the repo as follows:\n\n```bash\npip install -e .[dev, test]\npip install nox\n```\n\nFor running text and liter, run nox command.\n\n```bash\nnox .\n```\n\n## Example\n\ntabula-py enables you to extract table from PDF into DataFrame and JSON. It also can extract tables from PDF and save file as CSV, TSV or JSON.\n\n```py\nimport tabula\n\n# Read pdf into DataFrame\ndf = tabula.read_pdf(\"test.pdf\", pages='all')\n\n# Read remote pdf into DataFrame\ndf2 = tabula.read_pdf(\"https://github.com/tabulapdf/tabula-java/raw/master/src/test/resources/technology/tabula/arabic.pdf\")\n\n# convert PDF into CSV\ntabula.convert_into(\"test.pdf\", \"output.csv\", output_format=\"csv\", pages='all')\n\n# convert all PDFs in a directory\ntabula.convert_into_by_batch(\"input_directory\", output_format='csv', pages='all)\n```\n\nSee [example notebook](./examples/tabula_example.ipynb) for more detail. I also recommend to read [the tutorial article](https://aegis4048.github.io/parse-pdf-files-while-retaining-structure-with-tabula-py) written by [@aegis4048](https://github.com/aegis4048).\n\n## Get tabula-py working (Windows 10)\n\nThis instruction is originally written by [@lahoffm](https://github.com/lahoffm). Thanks!\n\n- If you don't have it already, install [Java](https://www.java.com/en/download/manual.jsp)\n- Try to run example code (replace the appropriate PDF file name).\n- If there's a `FileNotFoundError` when it calls `read_pdf()`, and when you type `java` on command line it says\n`'java' is not recognized as an internal or external command, operable program or batch file`, you should set `PATH` environment variable to point to the Java directory.\n- Find the main Java folder like `jre...` or `jdk...`. On Windows 10 it was under `C:\\Program Files\\Java`\n- On Windows 10: **Control Panel** -> **System and Security** -> **System** -> **Advanced System Settings** -> **Environment Variables** -> Select **PATH** --> **Edit**\n- Add the `bin` folder like `C:\\Program Files\\Java\\jre1.8.0_144\\bin`, hit OK a bunch of times.\n- On command line, `java` should now print a list of options, and `tabula.read_pdf()` should run.\n\n## Options\n\n- pages (str, int, `list` of `int`, optional)\n - An optional values specifying pages to extract from. It allows `str`, `int`, `list` of `int`.\n - Example: 1, '1-2,3', 'all' or [1,2]. Default is 1\n- guess (bool, optional):\n - Guess the portion of the page to analyze per page. Default `True`\n - Note that as of tabula-java 1.0.3, guess option becomes independent from lattice and stream option, you can use guess and lattice/stream option at the same time.\n- area (`list` of `float`, optional):\n - Portion of the page to analyze(top,left,bottom,right).\n - Example: `[269.875, 12.75, 790.5, 561]` or `[[12.1,20.5,30.1,50.2],[1.0,3.2,10.5,40.2]]`. Default is entire page\n- relative_area (bool, optional):\n - If all area values are between 0-100 (inclusive) and preceded by '%', input will be taken as % of actual height or width of the page. Default `False`.\n- lattice (bool, optional):\n - (`spreadsheet` option is deprecated) Force PDF to be extracted using lattice-mode extraction (if there are ruling lines separating each cell, as in a PDF of an Excel spreadsheet).\n- stream (bool, optional):\n - (`nospreadsheet` option is deprecated) Force PDF to be extracted using stream-mode extraction (if there are no ruling lines separating each cell, as in a PDF of an Excel spreadsheet)\n- password (bool, optional):\n - Password to decrypt document. Default is empty\n- silent (bool, optional):\n - Suppress all stderr output.\n- columns (list, optional):\n - X coordinates of column boundaries.\n - Example: `[10.1, 20.2, 30.3]`\n- output_format (str, optional):\n - Format for output file or extracted object.\n - For `read_pdf()`: `json`, `dataframe`\n - For `convert_into()`: `csv`, `tsv`, `json`\n- output_path (str, optional):\n - Output file path. File format of it is depends on `format`.\n - Same as `--outfile` option of tabula-java.\n- java_options (`list`, optional):\n - Set java options like `-Xmx256m`.\n- pandas_options (`dict`, optional):\n - Set pandas options like `{'header': None}`.\n- multiple_tables (bool, optional):\n - Extract multiple tables. If used with multiple pages (e.g. `pages='all'`) will extract separate tables from each page.\n - This option uses JSON as an intermediate format, so if tabula-java output format will change, this option doesn't work.\n- user_agent (str, optional)\n - Set a custom user-agent when download a pdf from a url. Otherwise it uses the default urllib.request user-agent\n\n\n## FAQ\n\n### `tabula-py` does not work\n\nThere are several possible reasons, but `tabula-py` is just a wrapper of [`tabula-java`](https://github.com/tabulapdf/tabula-java), make sure you've installed Java and you can use `java` command on your terminal. Many issue reporters forget to set PATH for `java` command.\n\nYou can check whether tabula-py can call `java` from Python process with `tabula.environment_info()` function.\n\n### I can't `from tabula import read_pdf`\n\nIf you've installed `tabula`, it will be conflict the namespace. You should install `tabula-py` after removing `tabula`.\n\n```bash\npip uninstall tabula\npip install tabula-py\n```\n\n### The result is different from `tabula-java`. Or, `stream` option seems not to work appropreately\n\n`tabula-py` set `guess` option `True` by default, for beginners. It is known to make a conflict between `stream` option. If you feel something strange with your result, please set `guess=False`.\n\n### Can I use option `xxx`?\n\nYes. You can use `options` argument as following. The format is same as cli of tabula-java.\n\n```python\nread_pdf(file_path, options=\"--columns 10.1,20.2,30.3\")\n```\n\n### How can I ignore useless area?\n\nIn short, you can extract with `area` and `spreadsheet` option.\n\n```python\nIn [4]: tabula.read_pdf('./table.pdf', spreadsheet=True, area=(337.29, 226.49, 472.85, 384.91))\nPicked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8\nOut[4]:\n Unnamed: 0 Col2 Col3 Col4 Col5\n0 A B 12 R G\n1 NaN R T 23 H\n2 B B 33 R A\n3 C T 99 E M\n4 D I 12 34 M\n5 E I I W 90\n6 NaN 1 2 W h\n7 NaN 4 3 E H\n8 F E E4 R 4\n```\n\n#### How to use `area` option\n\nAccording to tabula-java wiki, there is a explain how to specify the area:\nhttps://github.com/tabulapdf/tabula-java/wiki/Using-the-command-line-tabula-extractor-tool#grab-coordinates-of-the-table-you-want\n\nFor example, using macOS's preview, I got area information of this [PDF](https://github.com/chezou/tabula-py/files/711877/table.pdf):\n\n![image](https://cloud.githubusercontent.com/assets/916653/22047470/b201de24-dd6a-11e6-9cfc-7bc73e33e3b2.png)\n\n\n```bash\njava -jar ./target/tabula-1.0.1-jar-with-dependencies.jar -p all -a $y1,$x1,$y2,$x2 -o $csvfile $filename\n```\n\ngiven\n\n```python\n# Note the left, top, height, and width parameters and calculate the following:\n\ny1 = top\nx1 = left\ny2 = top + height\nx2 = left + width\n```\n\nI confirmed with tabula-java:\n\n```bash\njava -jar ./tabula/tabula-1.0.1-jar-with-dependencies.jar -a \"337.29,226.49,472.85,384.91\" table.pdf\n```\n\nWithout `-r`(same as `--spreadsheet`) option, it does not work properly.\n\n### I faced `ParserError: Error tokenizing data. C error`. How can I extract multiple tables?\n\nThis error occurs pandas trys to extract multiple tables with different column size at once.\nUse `multiple_tables` option, then you can avoid this error.\n\n### I want to prevent tabula-py from stealing focus on every call on my mac\n\nSet `java_options=[\"-Djava.awt.headless=true\"]`. kudos [@jakekara](https://twitter.com/jakekara/status/979031539697831937)\n\n### I got `?` character with result on Windows. How can I avoid it?\n\nIf the encoding of PDF is UTF-8, you should set `chcp 65001` on your terminal before launching a Python process.\n\n```sh\nchcp 65001\n```\n\nThen you can extract UTF-8 PDF with `java_options=\"-Dfile.encoding=UTF8\"` option. This option will be added with `encoding='utf-8'` option, which is also set by default.\n\n```python\n# This is an example for java_options is set explicitly\ndf = read_pdf(file_path, java_options=\"-Dfile.encoding=UTF8\")\n```\n\nReplace `65001` and `UTF-8` appropriately, if the file encoding isn't UTF-8.\n\n### I can't extract file/directory name with space on Windows\n\nYou should escape file/directory name yourself.\n\n\n### I want to use a different tabula .jar file\nYou can specify the jar location via enviroment variable\n```bash\nexport TABULA_JAR=\".../tabula-x.y.z-jar-with-dependencies.jar\"\n```\n\n### I want to extract multiple tables from a document\nYou can use the following example code\n```\ndf = read_pdf(file_path, multiple_tables=True)\n```\nThe result will be a list of DataFrames. If you want separate tables across all pages in a document, use the `pages` argument.\n\n### Table cell contents sometimes overflow into the next row.\nYou can try using `lattice=True`, which will often work if there are lines separating cells in the table.\n\n\n## Contributing\n\nInterested in helping out? I'd love to have your help!\n\nYou can help by:\n\n- [Reporting a bug](https://github.com/tabulapdf/tabula-py/issues).\n- Adding or editing documentation.\n- Contributing code via a Pull Request.\n- Write a blog post or spreading the word about `tabula-py` to people who might be able to benefit from using it.\n\n\n### Contributors\n\n- [@lahoffm](https://github.com/lahoffm)\n- [@jakekara](https://github.com/jakekara)\n- [@lcd1232](https://github.com/lcd1232)\n- [@kirkholloway](https://github.com/kirkholloway)\n- [@CurtLH](https://github.com/CurtLH)\n- [@nikhilgk](https://github.com/nikhilgk)\n- [@krassowski](https://github.com/krassowski)\n- [@alexandreio](https://github.com/alexandreio)\n- [@rmnevesLH](https://github.com/rmnevesLH)\n- [@red-bin](https://github.com/red-bin)\n- [@Gallaecio](https://github.com/Gallaecio)\n\n### Another support\n\nYou can also support our continued work on `tabula-py` with a donation [on Patreon](https://www.patreon.com/chezou).\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chezou/tabula-py", "keywords": "data frame,pdf,table", "license": "MIT License", "maintainer": "Aki Ariga", "maintainer_email": "chezou@gmail.com", "name": "tabula-py", "package_url": "https://pypi.org/project/tabula-py/", "platform": "", "project_url": "https://pypi.org/project/tabula-py/", "project_urls": { "Homepage": "https://github.com/chezou/tabula-py" }, "release_url": "https://pypi.org/project/tabula-py/1.4.1/", "requires_dist": [ "pandas", "numpy", "distro", "pytest ; extra == 'dev'", "flake8 ; extra == 'dev'", "black ; extra == 'dev'", "isort ; extra == 'dev'", "pytest ; extra == 'test'" ], "requires_python": "", "summary": "Simple wrapper for tabula-java, read tables from PDF into DataFrame", "version": "1.4.1" }, "last_serial": 5624883, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "d85a568a0b56732f5f6265d5e4cb5fc0", "sha256": "4fd74907fdac7a0487f83f37dc1111ab98d5f9eafc8f62f26ce96c0e517ed8ac" }, "downloads": -1, "filename": "tabula_py-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d85a568a0b56732f5f6265d5e4cb5fc0", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10065438, "upload_time": "2016-09-10T11:02:42", "url": "https://files.pythonhosted.org/packages/5f/42/5273099b26d99f8c0276abd360652195dcef7da3c9b0338bc26a2e284ce6/tabula_py-0.1-py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bb58bd6bf5836f052eaa4cb17ffcf665", "sha256": "7b80c71f20a0b1184facf246e7a449b703d0eae6fa51eed58e0f3eab2295a24b" }, "downloads": -1, "filename": "tabula_py-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "bb58bd6bf5836f052eaa4cb17ffcf665", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10065471, "upload_time": "2016-09-10T15:02:23", "url": "https://files.pythonhosted.org/packages/5c/81/6f26b4994a90f81c9ebc24ee482ec311835a3108ec5a66de828110c8d898/tabula_py-0.1.1-py3-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "64fffad606be5ff31d30215a807dce94", "sha256": "ef21991797282fc775000045fdf4fb5bdb12440e69370bc4f4bb2e27996408f2" }, "downloads": -1, "filename": "tabula_py-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "64fffad606be5ff31d30215a807dce94", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10066282, "upload_time": "2016-09-11T07:10:34", "url": "https://files.pythonhosted.org/packages/4e/e5/0aebbdc9f48a24305e964d4391030c0224896468f8e93b1aaa0113252859/tabula_py-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c04d97f555fc52c05b4e5536965a906", "sha256": "2f9ed246a4e0284bdc100050276790fc8e23a7505d38bc4bd80b786dc126e13a" }, "downloads": -1, "filename": "tabula-py-0.2.0.tar.gz", "has_sig": false, "md5_digest": "5c04d97f555fc52c05b4e5536965a906", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10065104, "upload_time": "2016-09-21T01:07:06", "url": "https://files.pythonhosted.org/packages/44/f2/1a0188579e4aa322d37d45ccabb9006adaf3664dbc7cf004a9d87494ccf2/tabula-py-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "8f24183f3e93441a9203fe5c100a2c51", "sha256": "cf77be573143c0308dcb5f8e8f558b376a13825bc627b1a5675e45bf8e208edd" }, "downloads": -1, "filename": "tabula_py-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8f24183f3e93441a9203fe5c100a2c51", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10066296, "upload_time": "2016-09-28T07:16:25", "url": "https://files.pythonhosted.org/packages/98/48/edbcbdf4a7e024bfba4629f17e08783f7d143fc6ebd2e851a4636f8c582f/tabula_py-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "de3b32d97fb3b194cee6ee0c575b44ce", "sha256": "d50a796d279dcd24c6564ab5e0100ab50d225394386f5bb196509c2d66e8f957" }, "downloads": -1, "filename": "tabula_py-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "de3b32d97fb3b194cee6ee0c575b44ce", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10066294, "upload_time": "2016-09-27T08:30:44", "url": "https://files.pythonhosted.org/packages/34/3a/702d8ad769dc0b2e88482fe326abce94698b67bcc8e38dae929f2b761705/tabula_py-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a0858037c2eb80a282b55e5354a46c4f", "sha256": "6160d59a87692eb4c13e6af14bde980d0ecc5c9dd96aedacb8a101f91f83ff83" }, "downloads": -1, "filename": "tabula-py-0.2.1.tar.gz", "has_sig": false, "md5_digest": "a0858037c2eb80a282b55e5354a46c4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10064656, "upload_time": "2016-09-27T08:31:16", "url": "https://files.pythonhosted.org/packages/54/c9/667bb1c78c462887378c11b0a0e952f2fbb85ff2fbfa6a7f193fa1031928/tabula-py-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "76f388864ceed13021d7d0b62102bf34", "sha256": "3279642d4e4a3caa9d17b57adb9510aac9898a35b4ba30a498afc8a35f7dcaea" }, "downloads": -1, "filename": "tabula_py-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "76f388864ceed13021d7d0b62102bf34", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10066320, "upload_time": "2017-01-09T04:29:50", "url": "https://files.pythonhosted.org/packages/a9/19/281fad7eb91a409500f2ea6f3ca40c4d6f3b7e592369228da4169517bb9f/tabula_py-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2ae96433da8905dd45bcdb91ab779e28", "sha256": "1cbab1701d6a1c3b7cf6742462e9beda1959d22c6df2a091de370c042875abec" }, "downloads": -1, "filename": "tabula-py-0.2.2.tar.gz", "has_sig": false, "md5_digest": "2ae96433da8905dd45bcdb91ab779e28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10064728, "upload_time": "2017-01-09T04:31:40", "url": "https://files.pythonhosted.org/packages/c1/40/d5a084ecd731d06cd780edb60f7c31fdb09b0aeb868fad691b40b752b486/tabula-py-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "dc39ee8826d1cae1138eda21d2ecd74a", "sha256": "956af000f11a1b293c516b5a2fc7d205686c7082815abcc54adbadabeaeb99d6" }, "downloads": -1, "filename": "tabula_py-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "dc39ee8826d1cae1138eda21d2ecd74a", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10066969, "upload_time": "2017-01-09T13:22:51", "url": "https://files.pythonhosted.org/packages/4e/e2/652a5c0296682d8297c4aa97c08147fdb5ab27f387defa55b70ecb5b706b/tabula_py-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f28748eb21538681268f2b00f3ede88", "sha256": "d4666ef9dc72370d42f5d0444c7916febc73311322522a7716bc03f8c7dbc767" }, "downloads": -1, "filename": "tabula-py-0.3.0.tar.gz", "has_sig": false, "md5_digest": "2f28748eb21538681268f2b00f3ede88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10065403, "upload_time": "2017-01-09T13:24:25", "url": "https://files.pythonhosted.org/packages/cc/af/ef213a182fbd03b0c5605264899416ec26f044e6c803886161ec9a6d21f5/tabula-py-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "384ffc9bf5b337a4821c61a26804d3fd", "sha256": "ea0b560292e6a4d05b6f11f587979d02f6c22f102415410d2f7ab24dd70a180c" }, "downloads": -1, "filename": "tabula_py-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "384ffc9bf5b337a4821c61a26804d3fd", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 10067185, "upload_time": "2017-01-15T14:42:55", "url": "https://files.pythonhosted.org/packages/dc/0e/5b93e65d52028f962bea22cd21ba61da3a2949bd659f002bcbb52dbcb13d/tabula_py-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c418ffec76e670ec7662e570246a1fc", "sha256": "20cf47baa00227dbe8894636b39d448713cdc6fb858dfa286246c32f0f96f557" }, "downloads": -1, "filename": "tabula-py-0.4.0.tar.gz", "has_sig": false, "md5_digest": "6c418ffec76e670ec7662e570246a1fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10065621, "upload_time": "2017-01-15T14:42:26", "url": "https://files.pythonhosted.org/packages/cd/9f/b8c0172870ce08636a62588033922f8948be82c64a4d16d223bc7fcef53a/tabula-py-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "7f98dad15153301d21fdaf64a88dc0fa", "sha256": "54c117695258975bb594274ea293420c9e086e577f4dd940bb4fa08b0410f784" }, "downloads": -1, "filename": "tabula_py-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7f98dad15153301d21fdaf64a88dc0fa", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10067235, "upload_time": "2017-01-29T06:58:48", "url": "https://files.pythonhosted.org/packages/da/1d/4e7880b05468859deaf0e14c9da94feea00addf9d504e8367b4ac97029c5/tabula_py-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b8ea6f25df80f8176a97d743f1c7cd3", "sha256": "b1c492299aa97d36cc96dd1a73e91ba7f04561afae35f1443b097841bbf2ef9c" }, "downloads": -1, "filename": "tabula-py-0.4.1.tar.gz", "has_sig": false, "md5_digest": "2b8ea6f25df80f8176a97d743f1c7cd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10065735, "upload_time": "2017-01-29T07:00:54", "url": "https://files.pythonhosted.org/packages/85/ab/3fffb4f63ff222fd8a093104e6b543a76ca42ac830b9a22c5a3eca252032/tabula-py-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "c627989015a3f6e357ece2728e538158", "sha256": "7b0da2ef1640fa70e26037f8387f999c17f17116b54b354a6c55d677db407039" }, "downloads": -1, "filename": "tabula_py-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c627989015a3f6e357ece2728e538158", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20245328, "upload_time": "2017-03-26T09:56:12", "url": "https://files.pythonhosted.org/packages/c3/4f/6bfd72c88dbdba646921a0944aedf6b25277c6b77a727739655cbda930a8/tabula_py-0.5.0-py2.py3-none-any.whl" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "d99dbc53377ff458842bdd29957d2b04", "sha256": "66991dc28026ff97cee1b9420d899c555cbe63d12d79e8102bbabc3c93a13cf8" }, "downloads": -1, "filename": "tabula_py-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d99dbc53377ff458842bdd29957d2b04", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20245803, "upload_time": "2017-05-18T11:51:43", "url": "https://files.pythonhosted.org/packages/44/ea/4650cf27b784486486b374d3be86d584c846722ed81a7381dcf24bc15832/tabula_py-0.6.0-py2.py3-none-any.whl" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "ab43b20d7c98d7aea66beecf996660f6", "sha256": "ece302d46577ede7997ed695b8e9d01cc7b734d61abf0bb4e503d083f8d0c26b" }, "downloads": -1, "filename": "tabula_py-0.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ab43b20d7c98d7aea66beecf996660f6", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20249697, "upload_time": "2017-05-19T03:56:35", "url": "https://files.pythonhosted.org/packages/67/c8/56fd60fedd070034191c166d99b8a8d8417be2079b5e6660c0eeed9bf0f6/tabula_py-0.6.1-py2.py3-none-any.whl" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "e8ca483f960730ffac270d58ae143d94", "sha256": "3b5d8992569eba19f748c5360184050bcf3f051dfdc0ec48de18eb62e2a06bbc" }, "downloads": -1, "filename": "tabula_py-0.7.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e8ca483f960730ffac270d58ae143d94", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20250101, "upload_time": "2017-05-24T00:36:24", "url": "https://files.pythonhosted.org/packages/02/d5/b4fe90189d822588035877c59a0b3a0f280f8710e9fc3d98cdc80c8b3f90/tabula_py-0.7.0-py2.py3-none-any.whl" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "bf750f01cb9d2df2b9286c2b4d9c44a2", "sha256": "212b75be774b7e3f57bff91d5731dec090d5dfca0dbd110adfc37d317d696dd5" }, "downloads": -1, "filename": "tabula_py-0.7.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bf750f01cb9d2df2b9286c2b4d9c44a2", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20250178, "upload_time": "2017-05-25T08:52:40", "url": "https://files.pythonhosted.org/packages/92/51/a435b3f3717230cdcb17fcb3ba5a1e1bc35fb1c2293df906f026d487689c/tabula_py-0.7.1-py2.py3-none-any.whl" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "7a216e580f2b894af59222328e443fae", "sha256": "634d535e2f588e9011845944c09857817e434ba10dc8598c44d94d1d194d6156" }, "downloads": -1, "filename": "tabula_py-0.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7a216e580f2b894af59222328e443fae", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20250555, "upload_time": "2017-05-28T09:14:01", "url": "https://files.pythonhosted.org/packages/e7/e3/dd0c28590c2b3b5bca41f4d7aae2d21cdba3befb1628974c4c3441eec45e/tabula_py-0.8.0-py2.py3-none-any.whl" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "80d48b315f122fdf47200e87cc223c0c", "sha256": "f6c469593c85db73a241824c0c6ae1fc5e27a803ce58a7402cebe91065e4e739" }, "downloads": -1, "filename": "tabula_py-0.9.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "80d48b315f122fdf47200e87cc223c0c", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 20250987, "upload_time": "2017-06-08T12:52:57", "url": "https://files.pythonhosted.org/packages/13/05/0e7574f14ec2f47c3a9f8949d6d91e4366d8888935f0cdca147affa211c9/tabula_py-0.9.0-py2.py3-none-any.whl" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "259c1a584d21b943ab53c00e1db57eb2", "sha256": "09130b9a7a311b654ff077e856e12837b1e329acb7c4e4987f0b64c8179841a5" }, "downloads": -1, "filename": "tabula_py-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "259c1a584d21b943ab53c00e1db57eb2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10921884, "upload_time": "2017-08-08T14:47:34", "url": "https://files.pythonhosted.org/packages/a5/86/cff1f95d313b057156df90726ba4611f9ebc8ee3724461ecfaec5d8f9f94/tabula_py-1.0.0-py2.py3-none-any.whl" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "04b0498483800b8a7963417fb3fc4793", "sha256": "9cd466d2875440b06c6dea7e85758741f37f24be71d4ebf1afd6d0581f25f6ab" }, "downloads": -1, "filename": "tabula_py-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "04b0498483800b8a7963417fb3fc4793", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10920025, "upload_time": "2018-04-30T11:43:00", "url": "https://files.pythonhosted.org/packages/09/30/730c5cc052ab00799cf225550bc54c77b36b0f6bdbfab32d610cb6809c08/tabula_py-1.0.1-py2.py3-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "568a61d7e282ce220bd270d35fdc79d7", "sha256": "798c62ea588b4c9e84b57673087b152bc08b6451f28030df9c1751aa6a4a2a41" }, "downloads": -1, "filename": "tabula_py-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "568a61d7e282ce220bd270d35fdc79d7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10920409, "upload_time": "2018-05-04T06:39:54", "url": "https://files.pythonhosted.org/packages/f3/4b/03359f812eb79f86daa91b26b8362b184973c5dd3cb292c4515781962ff0/tabula_py-1.1.0-py2.py3-none-any.whl" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "31f32c98d190d36226874e9ac901abb6", "sha256": "e8f91826aefb7798035ac785392d75a930525aea3bf8057bd122f0a41852a100" }, "downloads": -1, "filename": "tabula_py-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "31f32c98d190d36226874e9ac901abb6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10920798, "upload_time": "2018-05-06T07:47:09", "url": "https://files.pythonhosted.org/packages/85/d6/f514e765dda3850f9df18ca63f2ae92ff3fe6bc195bdb536c35d8e52fcc6/tabula_py-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4b02ba6f92e2266b09e3faf95becbe91", "sha256": "24a7febfa0d5debd3f5c2a8ad48f033b470fa3ef2176a6b0d2b691959a26d5ea" }, "downloads": -1, "filename": "tabula-py-1.1.1.tar.gz", "has_sig": false, "md5_digest": "4b02ba6f92e2266b09e3faf95becbe91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10921006, "upload_time": "2018-05-06T07:47:15", "url": "https://files.pythonhosted.org/packages/f5/44/5fafe62aafa5a5449c8777add81753b953b9bd2944639b33f227f9ea502d/tabula-py-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "8a645c051c3c09fdb0110309781fcef0", "sha256": "f87932ca3afb4a62fe6ebcddadc9f51151b1a8c375e151a17389974c0182ec37" }, "downloads": -1, "filename": "tabula_py-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8a645c051c3c09fdb0110309781fcef0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20375376, "upload_time": "2018-05-24T14:10:05", "url": "https://files.pythonhosted.org/packages/a8/0b/2108c427d6907280f75f9c6f9f6065a3a2965b94fbb010c3cf2f3730684d/tabula_py-1.2.0-py2.py3-none-any.whl" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "02980d88463762b078a8f154b1abd10a", "sha256": "d301a2e97b6ebbb993975521d0783efbff0aa71df3741291b4dc12c4a3aed07b" }, "downloads": -1, "filename": "tabula_py-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "02980d88463762b078a8f154b1abd10a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20378335, "upload_time": "2018-09-24T23:12:23", "url": "https://files.pythonhosted.org/packages/2a/60/15cee99f54273b78ae3c1846c1e85014975dbe503c09484c4e82b273f1b8/tabula_py-1.3.0-py2.py3-none-any.whl" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "ff99f6e2fffc55c78c8ca92867f48578", "sha256": "f6dd876b8086c25342d01a5418c966b96f29d1037306093bcc6aa013f6131a99" }, "downloads": -1, "filename": "tabula_py-1.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ff99f6e2fffc55c78c8ca92867f48578", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20378634, "upload_time": "2018-11-11T04:35:46", "url": "https://files.pythonhosted.org/packages/1f/f6/20e43951738260cff0005ea175b83ada43e0a74a12e729d0bcabc03b129a/tabula_py-1.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67e691e80711691b3e618be82f027c13", "sha256": "dff0df0d59b0c8aeb1bb4fe4027ddaa92c8935f2e35d31a41cf1f57066544c67" }, "downloads": -1, "filename": "tabula_py-1.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "67e691e80711691b3e618be82f027c13", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10416915, "upload_time": "2019-07-27T16:20:30", "url": "https://files.pythonhosted.org/packages/04/25/786eb741034e51c3f23b57ac3c8858a083897711852288da36045373b5f6/tabula_py-1.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf86bbe3c39bb202a554a41e0395a825", "sha256": "0ef18a07336a32bef8f02e5c460339e2a919d9ddbdff361f4d6064823535a170" }, "downloads": -1, "filename": "tabula-py-1.3.1.tar.gz", "has_sig": false, "md5_digest": "bf86bbe3c39bb202a554a41e0395a825", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10421313, "upload_time": "2019-07-27T16:20:34", "url": "https://files.pythonhosted.org/packages/78/21/1b1f55ea7c074c873dcbc062a473a1c4f8ce6750d53bcb5f976baf5709b1/tabula-py-1.3.1.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "061333ff207743fa8cd9ac8f925e367b", "sha256": "6bc8d1c0ee5d828bea0d4c276bbc36c146c19e0c8438799183dbab8ab12478af" }, "downloads": -1, "filename": "tabula_py-1.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "061333ff207743fa8cd9ac8f925e367b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10416915, "upload_time": "2019-07-27T16:31:05", "url": "https://files.pythonhosted.org/packages/27/1e/940c44c66aacdc2ccf1d0e96bbee61835ef1c5256620eafb0ff8da42954c/tabula_py-1.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "90181f81c910116dabe613957dd59504", "sha256": "7328903658487e3ce115a5a7b236f3a29abb1c586f5737007cf6d0954da655b4" }, "downloads": -1, "filename": "tabula-py-1.4.0.tar.gz", "has_sig": false, "md5_digest": "90181f81c910116dabe613957dd59504", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10421312, "upload_time": "2019-07-27T16:31:09", "url": "https://files.pythonhosted.org/packages/57/79/6dc9f6dfe6041f7bdfde09ed8a7663fc450cbb7530d30fdc4e9938e93635/tabula-py-1.4.0.tar.gz" } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "1f0fc66e76021b961634a11decde57ca", "sha256": "1e23e4ecc3caac88307eb60963bad4b022c8966b3980ea265f07a50d20d7cff9" }, "downloads": -1, "filename": "tabula_py-1.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1f0fc66e76021b961634a11decde57ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10416187, "upload_time": "2019-08-02T15:36:34", "url": "https://files.pythonhosted.org/packages/78/e0/895cbb704f00d962a6714076b605463f3a03a42e70337f4b67be66972df6/tabula_py-1.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3cb18d1e3b051dafbd32b4dba7bacdf9", "sha256": "ac9eec0a342ebf4583e171bc667f04a1c5346c3ec35c5fe5e08009dd4433a9a1" }, "downloads": -1, "filename": "tabula-py-1.4.1.tar.gz", "has_sig": false, "md5_digest": "3cb18d1e3b051dafbd32b4dba7bacdf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10420834, "upload_time": "2019-08-02T15:36:38", "url": "https://files.pythonhosted.org/packages/7b/8e/3b994b584dc18443fbc5fd439c5ff3f13660fba48bbc27e056f071ec9acb/tabula-py-1.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1f0fc66e76021b961634a11decde57ca", "sha256": "1e23e4ecc3caac88307eb60963bad4b022c8966b3980ea265f07a50d20d7cff9" }, "downloads": -1, "filename": "tabula_py-1.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1f0fc66e76021b961634a11decde57ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10416187, "upload_time": "2019-08-02T15:36:34", "url": "https://files.pythonhosted.org/packages/78/e0/895cbb704f00d962a6714076b605463f3a03a42e70337f4b67be66972df6/tabula_py-1.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3cb18d1e3b051dafbd32b4dba7bacdf9", "sha256": "ac9eec0a342ebf4583e171bc667f04a1c5346c3ec35c5fe5e08009dd4433a9a1" }, "downloads": -1, "filename": "tabula-py-1.4.1.tar.gz", "has_sig": false, "md5_digest": "3cb18d1e3b051dafbd32b4dba7bacdf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10420834, "upload_time": "2019-08-02T15:36:38", "url": "https://files.pythonhosted.org/packages/7b/8e/3b994b584dc18443fbc5fd439c5ff3f13660fba48bbc27e056f071ec9acb/tabula-py-1.4.1.tar.gz" } ] }