Desenvolva aplicativos para trabalhar com PDFs por meio da biblioteca Python
API Python de código aberto capaz de dividir, mesclar, cortar e transformar as páginas de arquivos PDF, adicionar dados personalizados e senhas ao PDF.
PyPDF2 é uma biblioteca Python pura de código aberto que oferece a capacidade de trabalhar com arquivos PDF dentro de aplicativos Python sem dependências externas. A biblioteca inclui suporte para vários recursos PDF importantes, como mesclar vários arquivos PDF, extrair o conteúdo do arquivo PDF, girar as páginas do arquivo PDF em um ângulo, dimensionar páginas PDF, transformar as páginas de arquivos PDF, extrair imagens de páginas PDF e muito mais.
A biblioteca de programação de código aberto PyPDF2 é muito fácil de usar e o código fonte é bem documentado e fácil de entender. A biblioteca permite que os desenvolvedores leiam e extraiam metadados de arquivos PDF, como o número de páginas, autor, criador, hora de criação e última atualização, etc. A biblioteca também suporta criptografar e descriptografar arquivos PDF com apenas algumas linhas de código Python.
.
Introdução ao PyPDF2
O PyPDF2 não faz parte da biblioteca padrão do Python, portanto, você precisará instalá-lo por conta própria. A maneira preferida de fazer isso é usar pip.
Instale o PyPDF2 via pip
python -m pip install pypdf2
Extrair texto de PDF via Python
A biblioteca PyPDF2 oferece capacidade para extrair texto programaticamente de arquivos PDF via Python. Não é fácil recuperar dados de um arquivo PDF porque a maneira como o PDF armazena as informações torna difícil obtê-los. O PyPDF2 facilita o trabalho dos desenvolvedores, fornecendo funções integradas fáceis de usar para recuperar informações. Eles podem usar o método extractText() no objeto de página para obter o conteúdo de texto da página.
Extrair texto de PDF via Python
// extract text from a PDF
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
page = reader.pages[0]
print(page.extract_text())
Lendo arquivos PDF via Python
A biblioteca PyPDF2 oferece a capacidade de extrair texto programaticamente de arquivos PDF via Python. Não é fácil recuperar dados de um arquivo PDF porque a maneira como o PDF armazena as informações torna difícil obtê-los. O PyPDF2 facilita o trabalho dos desenvolvedores, fornecendo funções integradas fáceis de usar para recuperar informações. Eles podem usar o método extractText() no objeto de página para obter o conteúdo de texto da página.
Lendo arquivo PDF via Python
// Reading text from a PDF
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
for page in reader.pages:
if "/Annots" in page:
for annot in page["/Annots"]:
subtype = annot.get_object()["/Subtype"]
if subtype == "/Text":
print(annot.get_object()["/Contents"])
Mesclar ou dividir documentos PDF
Você já esteve em uma situação em que precisou mesclar dois ou mais arquivos PDF em um único documento? A organização geralmente exige a mesclagem de vários arquivos PDF em um único documento. A biblioteca PyPDF2 oferece a capacidade de combinar arquivos PDF com apenas algumas linhas de código Python. Os desenvolvedores também podem facilmente dividir grandes documentos PDF em menores de acordo com suas necessidades. Os desenvolvedores podem extrair facilmente uma parte específica de um livro PDF ou dividi-lo em vários PDFs
Mesclar arquivos PDF via Python
// Merge PDF files
from PyPDF2 import PdfMerger
merger = PdfMerger()
for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
merger.append(pdf)
merger.write("merged-pdf.pdf")
merger.close()
Extrair metadados de arquivos PDF
A biblioteca PyPDF2 incluiu funcionalidade para extrair metadados de documentos PDF usando alguns comandos Python. Você pode obter facilmente informações sobre o autor, o aplicativo criador, número de páginas, título do documento e datas de criação, etc. Você pode facilmente extrair metadados de documentos PDF e usá-los de acordo com suas necessidades.
Extrair metadados de PDF via Python
// Reading PDF Metadata
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
meta = reader.metadata
print(len(reader.pages))
# All of the following could be None!
print(meta.author)
print(meta.creator)
print(meta.producer)
print(meta.subject)
print(meta.title)