
Security News
Meet Socket at Black Hat and DEF CON 2025 in Las Vegas
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
pypdf-table-extraction
Advanced tools
pypdf_table_extraction Formerly known as Camelot is a Python library that can help you extract tables from PDFs!
Here's how you can extract tables from PDFs.
You can check out the quickstart notebook.
Or follow the example below. You can check out the PDF used in this example here.
>>> import pypdf_table_extraction
>>> tables = pypdf_table_extraction.read_pdf('foo.pdf')
>>> tables
<TableList n=1>
>>> tables.export('foo.csv', f='csv', compress=True) # json, excel, html, markdown, sqlite
>>> tables[0]
<Table shape=(7, 7)>
>>> tables[0].parsing_report
{
'accuracy': 99.02,
'whitespace': 12.24,
'order': 1,
'page': 1
}
>>> tables[0].to_csv('foo.csv') # to_json, to_excel, to_html, to_markdown, to_sqlite
>>> tables[0].df # get a pandas DataFrame!
Cycle Name | KI (1/km) | Distance (mi) | Percent Fuel Savings | |||
---|---|---|---|---|---|---|
Improved Speed | Decreased Accel | Eliminate Stops | Decreased Idle | |||
2012_2 | 3.30 | 1.3 | 5.9% | 9.5% | 29.2% | 17.4% |
2145_1 | 0.68 | 11.2 | 2.4% | 0.1% | 9.5% | 2.7% |
4234_1 | 0.59 | 58.7 | 8.5% | 1.3% | 8.5% | 3.3% |
2032_2 | 0.17 | 57.8 | 21.7% | 0.3% | 2.7% | 1.2% |
4171_1 | 0.07 | 173.9 | 58.1% | 1.6% | 2.1% | 0.5% |
pypdf_table_extraction also comes packaged with a command-line interface!
Refer to the QuickStart Guide to quickly get started with pypdf_table_extraction, extract tables from PDFs and explore some basic options.
Tip: Visit the parser-comparison-notebook
to get an overview of all the packed parsers and their features.
Note: pypdf_table_extraction only works with text-based PDFs and not scanned documents. (As Tabula explains, "If you can click and drag to select text in your table in a PDF viewer, then your PDF is text-based".)
You can check out some frequently asked questions here.
See comparison with similar libraries and tools.
The easiest way to install pypdf_table_extraction is with conda, which is a package manager and environment management system for the Anaconda distribution.
conda install -c conda-forge pypdf-table-extraction
After installing the dependencies (tk and ghostscript), you can also just use pip to install pypdf_table_extraction:
pip install pypdf-table-extraction
After installing the dependencies, clone the repo using:
git clone https://github.com/py-pdf/pypdf_table_extraction.git
and install using pip:
cd pypdf_table_extraction
pip install "."
The documentation is available at http://pypdf-table-extraction.readthedocs.io/.
The Contributor's Guide has detailed information about contributing issues, documentation, code, and tests.
pypdf_table_extraction uses Semantic Versioning. For the available versions, see the tags on this repository. For the changelog, you can check out the releases page.
This project is licensed under the MIT License, see the LICENSE file for details.
FAQs
DEPRECATED - Please use camelot-py instead.
We found that pypdf-table-extraction demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
Security News
CAI is a new open source AI framework that automates penetration testing tasks like scanning and exploitation up to 3,600× faster than humans.
Security News
Deno 2.4 brings back bundling, improves dependency updates and telemetry, and makes the runtime more practical for real-world JavaScript projects.