extrair imagens de pdf em python

As imagens são comumente usadas em documentos PDF junto com o texto, o que torna o conteúdo mais atraente e elaborado. Ao processar e analisar os documentos PDF, pode ser necessário extrair imagens também. Portanto, neste artigo, demonstraremos como processar arquivos PDF e extrair imagens programaticamente em Python. O guia passo a passo e o exemplo de código demonstrarão todo o processo de extração de imagem.

Biblioteca Python para extrair imagens de PDF

Para extrair imagens de um arquivo PDF, usaremos Aspose.Words for Python. É uma biblioteca poderosa e rica em recursos para criar e manipular documentos de texto, incluindo PDF e DOCX. Você pode instalar a biblioteca de PyPI usando o seguinte comando pip.

> pip install aspose-words

Etapas para extrair imagens de PDF

Aspose.Words for Python permite extrair as imagens de um arquivo PDF em alguns passos simples. O seguinte é o fluxo de trabalho de como extrair imagens de um PDF usando Aspose.Words para Python.

  • Carregue o arquivo PDF do local desejado.
  • Converta PDF para formato DOCX.
  • Processe a versão DOCX do PDF e extraia imagens
  • Salve cada imagem como um arquivo no local desejado.

A seção a seguir demonstra como transformar as etapas mencionadas acima em código Python e extrair imagens de um PDF.

Extrair imagens de PDF em Python

No processo de extração da imagem, primeiro converteremos o arquivo PDF para o formato DOCX. Em um arquivo DOCX, as imagens são representadas pelos nós de forma. Portanto, processaremos cada forma e extrairemos a imagem dela.

A seguir estão as etapas para extrair imagens de um PDF em Python.

  • Primeiro, carregue o arquivo PDF usando a classe Document.
  • Em seguida, salve o PDF no formato DOCX e carregue a versão DOCX do arquivo PDF.
  • Recupere todas as formas em um objeto usando o método Document.getchildnodes(NodeType.SHAPE, True).
  • Percorra as formas e execute as seguintes operações para cada nó de forma:
    • Converta a forma no tipo Shape usando o método asshape().
    • Use o método Shape.hasimage() para verificar se a forma tem imagem.
    • Extraia a imagem da forma e salve-a usando o método Shape.imagedata.save(string).

O exemplo de código a seguir demonstra a extração de imagem de um documento PDF em Python.

# Importar o módulo Aspose.Words para Python
import aspose.words as aw

# carregue o arquivo PDF e converta para o formato Word DOCX
pdf = aw.Document("document.pdf")
pdf.save("pdf.docx")

# carregue a versão DOCX do PDF
doc = aw.Document("pdf.docx")

# recuperar todas as formas
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
imageIndex = 0

# loop através de formas
for shape in shapes :
    shape = shape.as_shape()
    if (shape.has_image) :

        # definir o nome do arquivo de imagem
        imageFileName = f"Image.ExportImages.{imageIndex}_{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}"

        # salvar imagem
        shape.image_data.save(imageFileName)
        imageIndex += 1

Biblioteca de extração de imagens Python PDF - Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para extrair imagens de PDF sem limitações de avaliação.

Conclusão

Ao analisar os documentos PDF, as imagens também precisam ser extraídas junto com o texto. Neste artigo, você aprendeu como extrair imagens de um PDF em Python. Você pode simplesmente instalar o Aspose.Words para Python e integrar a extração de imagens em seus aplicativos.

Explore a biblioteca de extração de imagens em PDF do Aspose

Aspose.Words for Python oferece uma variedade de outros recursos para manipular documentos de texto. Você pode visitar a documentação para explorar mais sobre a biblioteca. Caso você tenha alguma dúvida, sinta-se à vontade para nos informar através do nosso fórum.

Veja também