Extraiga fácilmente texto PDF (y otras operaciones avanzadas) con la biblioteca Python PyPDF2

La biblioteca PyPDF2 en Python es una herramienta muy útil cuando necesitas extraer texto de archivos PDF. Ya sea que necesite analizar el contenido de un documento PDF o buscar información específica en un documento, PyPDF2 puede ayudarlo a realizar estas tareas con facilidad. En este artículo, exploraremos cómo extraer texto de archivos PDF utilizando la biblioteca PyPDF2 y le proporcionaremos un código de muestra para que pueda comenzar.

Instalar la biblioteca PyPDF2

Primero, necesitas instalar la biblioteca PyPDF2. Puedes usar pip para instalarlo:

pip install PyPDF2


Abrir archivos PDF y leer contenido

Comencemos con un ejemplo simple. Supongamos que tenemos un archivo PDF llamado "sample.pdf" y queremos extraer el contenido del texto.

import PyPDF2


# 打开PDF文件
pdf_file = open('YOLOv1.pdf', 'rb')


# 创建一个PDF对象
pdf_reader = PyPDF2.PdfReader(pdf_file)


# 获取PDF文件中的页面数量
num_pages = len(pdf_reader.pages)


# 创建一个空字符串,用于存储提取的文本
text = ""


# 循环遍历每一页并提取文本
for page_num in range(num_pages):
    page = pdf_reader.pages[page_num]
    text += page.extract_text()


# 关闭PDF文件
pdf_file.close()


# 打印提取的文本
print(text)

El código anterior abrirá un archivo PDF llamado "YOLOv1.pdf", recorrerá cada página y extraerá el contenido del texto en una cadena. Finalmente, imprime el texto extraído.

453a85d1c65cfa045b7c6e035b28cb48.png

Extraer resultados

Uso avanzado

Además de la extracción de texto básica, PyPDF2 también proporciona otras funciones, como fusionar varios archivos PDF, rotar páginas, agregar marcadores, etc. Analicemos en detalle algunos usos avanzados y proporcionemos los ejemplos de código correspondientes.


Fusionar varios archivos PDF

A veces, es posible que necesites fusionar varios archivos PDF en uno. PyPDF2 te permite hacer esto.

from PyPDF2 import PdfWriter


merger = PdfWriter()


for pdf in ["M:\YOLOv1.pdf", "M:\YOLOv2.pdf"]:
    merger.append(pdf)


merger.write("M:\merged.pdf")
merger.close()

El código anterior abrirá dos archivos PDF llamados 'YOLOv1.pdf' y 'YOLOv1.pdf' y fusionará sus contenidos en un nuevo archivo PDF 'merged.pdf'.

Girar página

A veces, es posible que sea necesario rotar las páginas de un archivo PDF. Con PyPDF2 puedes rotar páginas para adaptarlas a tus necesidades.

import PyPDF2


# 打开PDF文件
pdf_file = open('M:\YOLOv1.pdf', 'rb')


# 创建PDF对象
pdf_reader = PyPDF2.PdfReader(pdf_file)


# 创建一个新的PDF对象
pdf_writer = PyPDF2.PdfWriter()


# 旋转第一页90度
page = pdf_reader.pages[0]
page.rotate(90)
pdf_writer.add_page(page)


# 将未旋转的页面添加到新文件中
for page_num in range(1, len(pdf_reader.pages)):
    page = pdf_reader.pages[page_num]
    pdf_writer.add_page(page)


# 创建一个新的PDF文件并保存旋转后的内容
output_pdf = open('M:\YOLOv1-rd.pdf', 'wb')
pdf_writer.write(output_pdf)


# 关闭所有打开的文件
pdf_file.close()
output_pdf.close()

El código anterior abrirá un archivo PDF llamado 'YOLOv1.pdf', rotará la primera página 90 grados y guardará la página rotada en un nuevo archivo PDF 'YOLOv1-rd.pdf'.

Añadir marcador

También puede utilizar PyPDF2 para agregar marcadores a archivos PDF para facilitar la navegación y la búsqueda de contenido.

El código anterior abrirá un archivo PDF llamado 'YOLOv1.pdf', copiará su contenido en un nuevo archivo PDF 'YOLOv1-copy.pdf' y agregará dos marcadores en la primera y sexta página.

import PyPDF2


# 打开PDF文件
pdf_file = open('M:\YOLOv1.pdf', 'rb')


# 创建PDF对象
pdf_reader = PyPDF2.PdfReader(pdf_file)


# 创建一个新的PDF对象
pdf_writer = PyPDF2.PdfWriter()


# 循环遍历每一页并将页面添加到新文件中
for page_num in range(len(pdf_reader.pages)):
    page = pdf_reader.pages[page_num]
    pdf_writer.add_page(page)


# 添加书签
pdf_writer.add_bookmark('Chapter 1', 0)  # 在第一页添加一个名为"Chapter 1"的书签
pdf_writer.add_bookmark('Chapter 2', 5)  # 在第六页添加一个名为"Chapter 2"的书签


# 创建一个新的PDF文件并保存带有书签的内容
output_pdf = open('M:\YOLOv1-copy.pdf', 'wb')
pdf_writer.write(output_pdf)


# 关闭所有打开的文件
pdf_file.close()
output_pdf.close()

en conclusión

Con la biblioteca PyPDF2, puede extraer fácilmente texto de archivos PDF, lo que resulta útil para análisis de datos, recuperación de información y tareas de automatización. Esperamos que este artículo y el código de muestra le ayuden a empezar a utilizar PyPDF2 para la extracción de texto PDF. Si necesita otro uso avanzado, como ajuste de proporciones, zoom y otras operaciones, puede visitar el sitio web oficial de PyPDF2 para ver otros ejemplos.

· FIN ·

VIDA FELIZ

6b65be853e2398f4ea448a02f941da7a.png

Este artículo es solo para aprendizaje y comunicación. Si hay alguna infracción, comuníquese con el autor para eliminarlo.

Supongo que te gusta

Origin blog.csdn.net/weixin_38739735/article/details/132893519
Recomendado
Clasificación