Biblioteca de analisador de PDF Python de código aberto

Experimente esta biblioteca Python gratuita e de código aberto para analisar, ler e extrair texto, imagens, tabelas e outros conteúdos de documentos PDF.

O que é PyMuPDF?

PyMuPDF, também conhecido como Fitz, é uma biblioteca Python de código aberto que fornece um conjunto abrangente de ferramentas para trabalhar com arquivos PDF. Com PyMuPDF, os usuários podem executar tarefas com eficiência, como abrir PDFs, extrair texto, imagens e tabelas, manipular propriedades de página como rotação e corte, criar novos documentos PDF e converter páginas PDF em imagens.

O PyMuPDF oferece suporte a vários recursos listados abaixo:

  • Leitura de documentos PDF: o PyMuPDF pode abrir e ler documentos PDF, permitindo que você acesse o texto, as imagens e outros conteúdos contidos neles.
  • Extração de texto: você pode extrair texto de documentos PDF, incluindo conteúdo de texto, fontes e informações de layout.
  • Extração de imagens: você pode extrair imagens de documentos PDF em vários formatos, como JPEG ou PNG.
  • Extração de tabelas: você também pode extrair tabelas de documentos PDF.

Nesta revisão, nosso foco principal será nos recursos de extração e análise sintática da biblioteca. Para uma avaliação aprofundada dos recursos de divisão, mesclagem e gerenciamento de páginas, clique aqui.

GitHub

Estatísticas do GitHub

Nome:
Linguagem:
Estrelas:
Garfos:
Licença:
O repositório foi atualizado pela última vez em

Introdução ao PyMuPDF

Você precisa do Python versão 3.8.0 ou superior para instalar e usar o PyMuPDF. Então, primeiro instale o Python e então use os comandos abaixo para instalar o PyMuPDF na sua máquina usando o pip e o ambiente virtual.

Linux


python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf

Mac OS


python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf

Windows


python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf  

Extrair texto de PDF

Você pode usar a biblioteca PyMuPDF em Python para extrair texto de um documento PDF e realizar análises de texto, como contagem de palavras, apenas usando as funções fornecidas na biblioteca, conforme mostrado no código abaixo:

Saída

A imagem abaixo mostra o texto extraído e o número de palavras no arquivo PDF:

Extrair imagens de PDF

Podemos usar a biblioteca PyMuPDF para extrair imagens de um documento PDF em Python. O snippet de código abaixo abre o arquivo PDF especificado, extrai imagens do PDF e as salva no diretório de trabalho atual:

Saída

A seguir está a imagem PNG extraída do documento PDF

Extrair tabelas de PDF

Também podemos usar a biblioteca PyMuPDF para processar um documento PDF e extrair tabelas dele. Verifique o trecho de código abaixo que abre o arquivo PDF especificado e extrai tabelas do documento PDF:

Saída

A captura de tela abaixo mostra a tabela extraída do documento PDF:

Inserir texto em PDF

O trecho de código Python abaixo demonstra o uso da biblioteca PyMuPDF para inserir texto em um arquivo PDF e salvar o PDF modificado como text.pdf:

Saída

O texto inserido usando o código acima é destacado na caixa vermelha abaixo:

Reconhecimento de texto em PDF usando OCR com PyMuPDF

We will perform OCR on the PDF file containing the following image:

Saída

A imagem abaixo mostra o texto extraído da imagem presente no arquivo PDF fornecido:

Conclusão

Em resumo, o PyMuPDF é uma ferramenta profissional com alguns pontos fortes e fracos claros. É ótimo para tarefas como OCR e extração de texto, o que o torna valioso para lidar com texto em PDFs.

No entanto, ele não é tão bom em extrair tabelas de PDFs, especialmente quando os PDFs têm estrutura complexa ou mais páginas, o que pode ser uma desvantagem para alguns usuários. Além disso, ele pode exigir bibliotecas adicionais como Pandas e arquivos de dados de idioma Tesseract OCR em certas situações, adicionando complexidade ao seu uso. Apesar dessas limitações, o PyMuPDF continua sendo uma escolha robusta para trabalhar com texto em PDFs.

Produtos Similares

 Portugese