¿Cómo extraer tablas PDF en Python?

Este tema trata sobre la forma de extraer tablas de un PDF ingresando a Python. Primero, analicemos qué es un archivo PDF.

PDF (Formato de documento portátil) es un formato de archivo que ha capturado todo el clima de un documento impreso como un mapa de bits que puede ver, navegar, imprimir o reenviar fácilmente a otra persona. Los archivos PDF se crean con Adobe Acrobat,

Ejemplo :

Supongamos que un archivo PDF contiene una tabla

ID_usuario Nombre Ocupación
1 David Gestión de productos
2 León administrador IT
3 John Abogado

Y queremos leer esta tabla en nuestro Programa Python. Este problema se puede resolver utilizando varios enfoques. Vamos a discutir cada uno por uno.

Método 1: Usar tabula-py

El tabula-py es un contenedor Python simple de tabula-java, que puede leer tablas en un PDF. Puede instalar la biblioteca tabula-py usando el comando.

pip install tabula-py
pip install tabulate

Los métodos utilizados en el ejemplo son:

read_pdf(): lee los datos de las tablas del archivo PDF de la dirección dada

tabular(): organiza los datos en un formato de tabla

El archivo PDF utilizado aquí es PDF .

Python3

from tabula import read_pdf
from tabulate import tabulate
 
#reads table from pdf file
df = read_pdf("abc.pdf",pages="all") #address of pdf file
print(tabulate(df))

Producción:

Método 2: Usar Camelot

Camelot es una biblioteca de Python que ayuda a extraer tablas de archivos PDF. Puede instalar la biblioteca camelot-py usando el comando

pip install camelot-py

Los métodos utilizados en el ejemplo son:

read_pdf(): lee los datos de las tablas del archivo pdf de la dirección dada

tablas[índice].df: apunta hacia la tabla deseada de un índice dado

El archivo PDF utilizado aquí es PDF .

Python3

import camelot
 
# extract all the tables in the PDF file
abc = camelot.read_pdf("test.pdf")   #address of file location
 
# print the first table as Pandas DataFrame
print(abc[0].df)

Producción:

Publicación traducida automáticamente

Artículo escrito por biswasarkadip y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *