This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

HTML'den Görsele

Bir web sayfası URL'sini veya ham HTML içeriğini bir ekran görüntüsü görseli olarak yakalayın. Cihaz emülasyonunu (masaüstü, tablet, mobil), tam sayfa yakalamayı ve birden fazla çıktı biçimini destekler.

API Uç Noktası

POST /api/v1/tools/image/html-to-image

Bir JSON gövdesi kabul eder (multipart değil). Dosya yüklemesi gerekmez.

Parametreler

ParametreTürZorunluVarsayılanAçıklama
urlstringKoşullu-Yakalanacak URL (geçerli bir URL olmalıdır)
htmlstringKoşullu-İşlenecek ham HTML içeriği (1 ile 5.000.000 karakter arası)
formatstringHayır"png"Çıktı biçimi: jpg, png, webp
qualitynumberHayır90Kayıplı biçimler için çıktı kalitesi (1 ile 100 arası)
fullPagebooleanHayırfalseYalnızca görünüm alanını değil, kaydırılabilir tüm sayfayı yakala
devicePresetstringHayır"desktop"Cihaz emülasyonu: desktop, tablet, mobile, custom
viewportWidthnumberHayır1280Piksel cinsinden özel görünüm alanı genişliği (320 ile 3840 arası, devicePreset custom olduğunda kullanılır)
viewportHeightnumberHayır720Piksel cinsinden özel görünüm alanı yüksekliği (320 ile 2160 arası, devicePreset custom olduğunda kullanılır)

url veya html değerinden biri sağlanmalıdır, ancak ikisi birden değil.

Cihaz Ön Ayarları

Ön AyarGenişlikYükseklikMobil UA
desktop1280720Hayır
tablet7681024Hayır
mobile375812Evet
custom(kullanıcı tarafından belirtilir)(kullanıcı tarafından belirtilir)Hayır

Örnek İstek

Bir web sayfası yakalama:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "format": "png", "fullPage": true, "devicePreset": "desktop"}'

HTML içeriği işleme:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"html": "<div style=\"padding: 20px; background: #f0f0f0;\"><h1>Hello</h1></div>", "format": "png"}'

Örnek Yanıt

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/screenshot.png",
  "originalSize": 0,
  "processedSize": 145000
}

Notlar

  • Sunucuda Chromium'un kurulu olmasını gerektirir. Tarayıcı hizmeti mevcut değilse HTTP 503 döndürür.
  • URL'ler SSRF saldırılarına karşı doğrulanır (özel/dahili ağ adresleri engellenir).
  • Bu uç nokta saatte 120 istekle sınırlıdır.
  • Bu araç URL'lerden/HTML'den görsel ürettiği için originalSize her zaman 0'dır.
  • Çıktı dosya adı screenshot.<format> şeklindedir.
  • Sayfanın yüklenmesi çok uzun sürerse istek HTTP 504 (ağ geçidi zaman aşımı) döndürür.
  • Tarayıcı hizmeti tekrar tekrar çökerse geçici olarak devre dışı bırakılır ve BROWSER_CRASHED koduyla HTTP 503 döndürür.