Extrair imagens de documentos PDF

Pode ser necessário extrair imagens de seus documentos PDF ou Word para reutilizá-los. Você pode facilmente extrair imagens de documentos PDF programaticamente na nuvem. Este artigo explicará como extrair imagens de documentos PDF usando uma API REST em Python.

Os seguintes tópicos serão abordados neste artigo:

API REST do analisador de documentos e SDK do Python

Para extrair imagens de um documento PDF, usarei a API Python SDK of GroupDocs.Parser Cloud. Ele permite que você analise os dados de todos os tipos de documentos populares. Você pode extrair texto, imagens e analisar dados por um modelo usando o SDK. Ele também fornece SDKs .NET, Java, PHP, Ruby e Node.js como seus membros da família de analisadores de documentos para a Cloud API.

Você pode instalar o GroupDocs.Parser Cloud em seu projeto Python com pip (package installer for python) usando o seguinte comando no console:

pip install groupdocs_parser_cloud

Obtenha seu ID de cliente e Segredo do cliente no painel antes de começar a seguir as etapas e os exemplos de código disponíveis. Depois de ter seu ID de cliente e segredo, adicione o código conforme mostrado abaixo:

client_id = "112f0f38-9dae-42d5-b4fc-cc84ae644972"
client_secret = "16ad3fe0bdc39c910f57d2fd48a5d618"

configuration = groupdocs_parser_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Extrair imagens de PDF usando uma API REST em Python

Você pode extrair imagens de documentos PDF seguindo as etapas simples mencionadas abaixo:

Carregue o Documento

Em primeiro lugar, carregue o documento PDF na nuvem usando o exemplo de código abaixo:

# inicialização da API
file_api = groupdocs_parser_cloud.FileApi.from_config(configuration)
my_storage = ""

request = groupdocs_parser_cloud.UploadFileRequest("sample.pdf", "C:\\Files\\sample.pdf", my_storage)
response = file_api.upload_file(request)

Como resultado, o arquivo PDF carregado (sample.pdf) estará disponível na seção de arquivos do seu painel na nuvem.

Extrair todas as imagens do documento PDF usando Python

Você pode extrair facilmente todas as imagens do arquivo PDF programaticamente seguindo as etapas mencionadas abaixo.

  • Crie uma instância do ParseApi
  • Definir ImageOptions
  • Definir caminho para o arquivo PDF
  • Criar Solicitação de Imagens
  • Obtenha resultados chamando o método ParseApi.images()

O exemplo de código a seguir mostra como extrair todas as imagens de um documento PDF usando uma API REST.

# inicialização da API
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)
# definir opções de imagem
options = groupdocs_parser_cloud.ImagesOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "sample.pdf"

# criar pedido
request = groupdocs_parser_cloud.ImagesRequest(options)
result = parseApi.images(request)

for image in result.images:
    print("Image path in storage: " + image.path + ". Download url: " + image.download_url)
    print("Image format: " + image.file_format + ". Page index: " + str(image.page_index))
Extraia todas as imagens do documento PDF.

Extraia todas as imagens do documento PDF.

Baixar imagens extraídas

O exemplo de código acima salvará as imagens extraídas na nuvem. Você pode baixar essas imagens usando o exemplo de código abaixo:

# inicialização da API
file_api = groupdocs_parser_cloud.FileApi.from_config(configuration)
my_storage = ""
  
# Baixar imagem 
request = groupdocs_parser_cloud.DownloadFileRequest(image.path, my_storage)
response = file_api.download_file(request)

# Mova o arquivo baixado para o seu diretório de trabalho
shutil.move(response, "C:\\Files\\Images")

Salvar imagens por números de página de documentos PDF usando Python

Você pode facilmente extrair as imagens de páginas específicas de um arquivo PDF programaticamente seguindo as etapas mencionadas abaixo.

  • Crie uma instância do ParseApi
  • Definir ImageOptions
  • Forneça o caminho para o arquivo PDF
  • Definir o número da página inicial
  • Defina a contagem de páginas a serem extraídas
  • Criar Solicitação de Imagens
  • Obtenha resultados chamando o método ParseApi.images()

O exemplo de código a seguir mostra como extrair as imagens por intervalo de números de página de um documento PDF usando uma API REST. Siga as etapas mencionadas anteriormente para baixar as imagens extraídas.

# inicialização da API
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)
# definir opções de imagem
options = groupdocs_parser_cloud.ImagesOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "sample.pdf"
# definir intervalo de páginas
options.start_page_number = 1
options.count_pages_to_extract = 1

# criar solicitação
request = groupdocs_parser_cloud.ImagesRequest(options)
result = parseApi.images(request)

for page in result.pages:
    print("Images from " + str(page.page_index) + " page.")
   for image in page.images:
        print("Image path in storage: " + image.path + ". Download url: " + image.download_url)
        print("Image format: " + image.file_format + ". Page index: " + str(image.page_index))
Extraia imagens por intervalo de número de página do documento PDF.

Extraia imagens por intervalo de número de página do documento PDF.

Obter imagens do documento anexado com PDF usando Python

Você pode extrair as imagens de um documento dentro de um contêiner, disponível como anexo em um arquivo PDF programaticamente seguindo as etapas mencionadas abaixo.

  • Crie uma instância do ParseApi
  • Definir ImageOptions
  • Definir caminho para o arquivo PDF
  • Definir ContainerItemInfo
  • Forneça o caminho relativo do documento interno
  • Definir o número da página inicial
  • Defina a contagem de páginas a serem extraídas
  • Criar Solicitação de Imagens
  • Obtenha resultados chamando o método ParseApi.images()

O exemplo de código a seguir mostra como extrair as imagens de um documento dentro de um documento PDF usando uma API REST. Siga as etapas mencionadas anteriormente para baixar as imagens extraídas.

# inicialização da API
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)

# definir opções de imagem
options = groupdocs_parser_cloud.ImagesOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "PDF_with_attachements.pdf"
options.file_info.password = "password"
# definir item de contêiner
container_info = groupdocs_parser_cloud.ContainerItemInfo()
container_info.relative_path = "template-document.pdf"
options.container_item_info = container_info
# definir intervalo de páginas
options.start_page_number = 2
options.count_pages_to_extract = 1

# criar solicitação
request = groupdocs_parser_cloud.ImagesRequest(options)
result = parseApi.images(request)

for page in result.pages:
    print("Images from " + str(page.page_index) + " page.")
   for image in page.images:
        print("Image path in storage: " + image.path + ". Download url: " + image.download_url)
        print("Image format: " + image.file_format + ". Page index: " + str(image.page_index))
Extrair imagens de documento anexado em documento PDF

Extraia imagens do documento anexado no documento PDF.

Experimente on-line

Experimente a seguinte ferramenta de análise de PDF on-line gratuita, desenvolvida usando a API acima. https://products.groupdocs.app/parser/pdf

Conclusão

Neste artigo, você aprendeu como extrair imagens de documentos PDF na nuvem. Este artigo também explicou como carregar programaticamente um arquivo PDF na nuvem. Você também aprendeu como baixar as imagens extraídas usando o SDK. Você pode aprender mais sobre GroupDocs.Parser Cloud API usando a documentação. Também fornecemos uma seção Referência de API que permite visualizar e interagir com nossas APIs diretamente pelo navegador. Em caso de ambiguidade, sinta-se à vontade para nos contatar no fórum.

Veja também