- Por que Extrair Imagens do HTML? (Benefícios e Casos de Uso)
- API de Processamento HTML
- Extrair Imagens do HTML usando C#
- Baixar Imagens HTML usando cURL
- Experimente o Extrator de Imagem HTML Online Gratuito
Por que Extrair Imagens do HTML? (Benefícios e Casos de Uso)
HTML arquivos geralmente incluem vários tipos de imagens, como: imagens padrão com a tag <img>, imagens inline em Base64 (data:image/...), imagens definidas em CSS (por exemplo, background-image), SVG ícones e gráficos, imagens vinculadas externamente ou, recursos de imagem incorporados. Extrair imagens de documentos HTML é útil para:
- Migração de conteúdo
- Extraindo mídia de e-mails HTML
- Raspagem de dados e análise
- Preparando conjuntos de dados de treinamento para aprendizado de máquina
- Convertendo HTML em PDF/Word enquanto preserva a mídia
- Arquivando páginas da web com ativos originais
API de Processamento HTML
GroupDocs.Parser Cloud SDK for .NET é uma API robusta baseada em REST capaz de processar todos os formatos de arquivo populares, incluindo arquivos HTML. Ela permite que você manipule arquivos HTML e você pode usá-la para:
- Analisar documentos HTML
- Extrair imagens incorporadas e inline
- Extrair imagens codificadas em Base64
- Detectar referências a imagens externas
- Recuperar metadados (tamanho, tipo, caminho)
- Baixar imagens extraídas localmente
- Automatizar fluxos de trabalho de análise HTML
Formatos de Imagem Suportados
Pré-requisitos
- Uma conta do GroupDocs Cloud (Client ID e Client Secret).
- .NET 6.0+ instalado.
- Visual Studio ou IDE compatível.
- Pacote NuGet:
GroupDocs.Parser-Cloud
Instale via NuGet
dotnet add package GroupDocs.Parser-Cloud --version 25.7.0
Extrair Imagens do HTML usando C#
Dado abaixo está o exemplo completo em C# demonstrando a extração de imagens HTML usando a API Cloud.
Passo 1 — Inicializar a API:
var config = new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
var parserApi = new ParserApi(config);
var fileApi = new FileApi(config);
Passo 2 — Fornecer informações do arquivo HTML para análise:
var fileInfo = new FileInfo { FilePath = "input.html" };
var options = new ImagesOptions { FileInfo = fileInfo };
var request = new ImagesRequest(options);
Passo 3 — Extrair Imagens do HTML (Incorporadas, Em linha e Base64):
var response = parserApi.Images(request);
foreach (var image in response.Images)
{
Console.WriteLine($"Source: {image.Path}, Type: {image.MediaType}, Size: {image.Size}");
}
Passo 4 — Baixar Imagens Extraídas (compatível com macOS e Windows):
var outputDirectory = "/Users/nayyer/Downloads/html-images";
Directory.CreateDirectory(outputDirectory);
foreach (var img in response.Images)
{
var cloudImagePath = img.Path.Replace("\\", "/");
var downloadRequest = new DownloadFileRequest(path: cloudImagePath);
using (var stream = fileApi.DownloadFile(downloadRequest))
{
var localPath = Path.Combine(outputDirectory, Path.GetFileName(cloudImagePath));
using (var fileStream = File.Create(localPath))
{
stream.CopyTo(fileStream);
}
Console.WriteLine($"Downloaded: {localPath}");
}
}
// Para mais exemplos, visite https://github.com/groupdocs-parser-cloud/groupdocs-parser-cloud-dotnet
var configuration = new Configuration("XXXXXXX-XXXXXXX-XXXXXX-XXXXXX", "XXXXXXXXXXXX");
configuration.ApiBaseUrl = "https://api.groupdocs.cloud";
var parserApi = new ParserApi(config);
var fileApi = new FileApi(config);
var fileInfo = new FileInfo { FilePath = "input.html" };
var options = new ImagesOptions { FileInfo = fileInfo };
var request = new ImagesRequest(options);
var response = parserApi.Images(request);
foreach (var image in response.Images)
{
Console.WriteLine($"Source: {image.Path}, Type: {image.MediaType}, Size: {image.Size}");
}
var outputDirectory = "/Users/nayyer/Downloads/html-images";
Directory.CreateDirectory(outputDirectory);
foreach (var img in response.Images)
{
var cloudImagePath = img.Path.Replace("\\", "/");
var downloadRequest = new DownloadFileRequest(path: cloudImagePath);
using (var stream = fileApi.DownloadFile(downloadRequest))
{
var localPath = Path.Combine(outputDirectory, Path.GetFileName(cloudImagePath));
using (var fileStream = File.Create(localPath))
{
stream.CopyTo(fileStream);
}
Console.WriteLine($"Downloaded: {localPath}");
}
}
Baixar Imagens HTML usando cURL
Além do snippet de código C#, também podemos usar comandos cURL para baixar imagens de arquivos HTML.
Passo 1 — Gerar Token de Acesso: O primeiro passo nesta abordagem é gerar um token de acesso JWT com base nas credenciais do cliente.
curl -v -X POST "https://api.groupdocs.cloud/connect/token" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET" \
-H "Content-Type: application/x-www-form-urlencoded"
*Step 2 — Extract Images:
curl -v -X POST "https://api.groupdocs.cloud/v1.0/parser/images" \
-H "accept: application/json" \
-H "authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d "{ "FileInfo": { "FilePath": "inbox/input.html", "StorageName": "internal" }, "OutputPath": "extracted-images"}"
Experimente o Extrator de Imagens HTML Online Gratuito
Oferecemos um Online HTML Image Extractor gratuito desenvolvido com base na API GroupDocs.Parser Cloud. Nenhuma instalação de software ou download é necessário para avaliar as capacidades da API REST dentro do navegador.

Conclusão
Neste artigo, nós aprendemos a forma mais precisa de extrair imagens do HTML usando a API REST .NET. Com a ajuda desta API, você pode:
- Extrair imagens incorporadas e em linha
- Analisar imagens codificadas em Base64
- Extrair imagens de fundo em CSS
- Recuperar metadados para imagens vinculadas
- Baixe todas as imagens programaticamente
Portanto, é a melhor solução para automatizar a extração de mídia HTML em aplicações C#.
Artigos Relacionados
Recomendamos fortemente a visita aos seguintes artigos para saber mais sobre:
- Extrair Texto de XML em C#
- Adicionar Marca d’água de Imagem ao Word em C#
- ExExtrair Imagens do PowerPoint em C# .NET
Perguntas Frequentes (FAQs)
Posso extrair imagens incorporadas em Base64 do HTML? Sim, a API extrai imagens HTML codificadas em Base64 e inline automaticamente.
A API extrai imagens vinculadas externamente? A API extrai metadados para imagens vinculadas; o download delas é opcional.
Posso extrair imagens referenciadas no CSS? Sim, imagens referenciadas através de CSS inline ou embutido são suportadas.
Quais formatos de imagem são suportados? JPG, PNG, BMP, GIF, TIFF e outros tipos de imagem comuns.
Existe um período de teste gratuito? Sim. Você pode criar uma conta gratuita e obter 150 chamadas de API mensais gratuitas.
