Skip to content
.NET

API screenshot C# pour applications .NET

Ajoutez la capture à toute appli .NET — ASP.NET Core, Blazor, Azure Functions ou console. Async natif et typage fort.

Ce que vous pouvez construire

Reporting entreprise

PDF depuis tableaux de bord vers SharePoint, Azure Blob ou e-mail.

Azure Functions

Jobs serverless sans binaires navigateur — simple appel HTTP.

Captures authentifiées

Automatisation de connexion pour portails et panneaux internes.

Conformité et archivage

Captures avec rendu géographique précis vers Azure Blob ou S3.

Ce que l’API gère pour vous

Tous les formats de capture

PNG, JPEG, WebP, PDF pleine page, HTML brut et vidéos.

Commandes d’automatisation

Clics, saisie, défilement, navigation et attentes.

Routage dans plus de 80 pays

Rendu depuis de vrais navigateurs.

Plus de 14 intégrations d’apps

S3, Drive, Dropbox, Slack, etc.

Lots et crawl

Sitemaps et exploration avec nouvelles tentatives.

Navigateurs sur site

Dans votre réseau.

Installation

terminal
dotnet add package ScreenshotCenter
Disponible sur NuGetnuget.org/packages/ScreenshotCenter

Exemple simple

Program.cs
using ScreenshotCenter;

var client = new ScreenshotCenterClient(
    Environment.GetEnvironmentVariable("SCREENSHOTCENTER_API_KEY")!);

var shot   = await client.Screenshot.CreateAsync("https://example.com");
var result = await client.WaitForAsync(shot.Id);
Console.WriteLine(result.Status); // "finished"

Autres exemples

Ciblage géographique
var shot = await client.Screenshot.CreateAsync("https://example.com",
    new Dictionary<string, string> {
        ["country"] = "fr",
        ["lang"] = "fr-FR"
    });
var done = await client.WaitForAsync(shot.Id);
await client.Screenshot.SaveImageAsync(done.Id, "/tmp/fr.png");
Génération de PDF
var shot = await client.Screenshot.CreateAsync("https://example.com",
    new Dictionary<string, string> { ["pdf"] = "true" });
var done = await client.WaitForAsync(shot.Id);
await client.Screenshot.SavePdfAsync(done.Id, "/tmp/page.pdf");
Gestion des erreurs
try
{
    var result = await client.WaitForAsync(shot.Id, timeoutMs: 60_000);
}
catch (ScreenshotFailedException e)
{
    Console.Error.WriteLine($"Failed: {e.Reason}");
}
catch (TimeoutException e)
{
    Console.Error.WriteLine($"Timed out after {e.TimeoutMs}ms");
}
catch (ApiException e)
{
    Console.Error.WriteLine($"API error {e.Status}: {e.Message}");
}
Crawl de site web
var crawl = await client.Crawl.CreateAsync("https://example.com", "example.com", 100);
var result = await client.Crawl.WaitForAsync(crawl.Id);
Console.WriteLine(result.TotalDiscovered);  // pages found

Ressources

Questions fréquentes

Le SDK prend-il en charge .NET 6+ ?

Oui. Cible .NET 6 et suivants, ASP.NET Core, Blazor, Azure Functions, console.

Entièrement async ?

Oui. Les méthodes retournent des Task avec async/await.

PDF depuis C# ?

Oui. Paramètre PDF, papier, marges et orientation — rendu navigateur réel.

Comparé à Selenium sous .NET ?

Selenium exige navigateur et WebDriver. ScreenshotCenter est une API HTTP simple.

À voir aussi

Commencez à capturer avec .NET dès aujourd’hui

500 captures offertes à l’essai — sans carte bancaire. Installez le SDK et réalisez votre première capture en quelques minutes.