Aller au contenu
Se connecter

Guide

Capturer une longue page telle qu'un téléphone la voit

Une fenêtre étroite n'est pas un téléphone. Utilisez le préréglage mobile pour obtenir la mise en page d'un téléphone, puis gardez une sortie d'une taille que l'on peut stocker et ouvrir.

Régler width sur 390 donne les bonnes media queries, mais la page voit toujours un navigateur de bureau : pas de tactile, un user agent de bureau et une densité de 1. Les sites qui servent un autre balisage ou d'autres images aux téléphones montrent alors leur version de bureau dans une fenêtre étroite.

Utiliser le préréglage mobile

Le préréglage device réglé sur "mobile" définit ensemble une fenêtre de 390 × 844, un ratio de pixels de 3, le tactile et un user agent de téléphone. Un width, un height ou un device_scale_factor explicite reste prioritaire ; c'est ainsi que la requête ci-dessous garde la mise en page mobile avec une densité de 2.

curl -sS https://api.ironfang.com/render/v1/screenshot \
  -H "Authorization: Bearer $IRONFANG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://ironfang.com/company",
    "device": "mobile",
    "device_scale_factor": 2,
    "full_page": true,
    "full_page_readiness": "scroll",
    "format": "jpeg",
    "quality": 80
  }' \
  -o company-mobile.jpg
Le haut de la page entreprise d'Ironfang capturée sur un téléphone : le logo et le bouton de menu, le titre We build the infrastructure developers should not have to et le début de la section suivante.
Les deux premiers écrans de cette capture. L'image entière mesure 780 × 9 922 pixels.

Garder une sortie utilisable

La hauteur de l'image est celle de la page multipliée par la densité. Avec la densité de 3 du préréglage, une page de 19 070 pixels CSS de haut revient avec 57 210 pixels de haut, ce que beaucoup de visionneuses et de limites d'envoi refusent. Pour l'archivage et la relecture, une densité de 1 ou 2 suffit généralement.

WebP ne peut pas contenir une image de plus de 16 383 pixels de haut ; utilisez JPEG ou PNG pour les longues captures. JPEG garde une capture haute légère, PNG est sans perte.

Limiter les pages sans fin naturelle

Un fil qui se charge sans cesse n'a pas de bas. full_page_max_height coupe la capture à une hauteur en pixels CSS, 20 000 au plus et par défaut, et l'en-tête X-Ironfang-Warnings indique alors height_capped.

{
  "url": "https://example.com/feed",
  "device": "mobile",
  "full_page": true,
  "full_page_max_height": 8000,
  "format": "jpeg"
}

En-têtes sticky et barres fixes

La capture est prise depuis le haut : un en-tête sticky apparaît une seule fois, en haut, et une barre fixe reste là où elle était dans le premier écran. Masquez l'un ou l'autre avec hide_selectors, et les bannières de cookies avec block_cookie_banners.

Pour aller plus loin