Je veux faire une capture d'écran d'une page avec Chrome Headless, et nous avons vu à la fois le --screenshot
とのことです。 --virtual-time-budget
interrupteurs pour prendre une capture d'écran et limiter le temps d'attente du navigateur pour le chargement.
J'ai cependant des éléments sur la page qui attendent que DOMContentLoaded soit rendu, et nous voulons les capturer aussi.
Je cherche un moyen de faire une capture d'écran, disons, de 5 secondes après la page est chargée, plutôt que juste au moment où elle est considérée comme chargée.
Nous appelons Chrome Headless depuis notre application NodeJS comme suit :
cp.spawnSync("google-chrome-beta", ["--headless", "--disable-gpu", "--screenshot", "--profile-directory=Default", "--window-size=1920,6200", "--virtual-time-budget=25000", url]);
Nous savons qu'il existe des bibliothèques npm qui permettent d'y parvenir en utilisant une API de node, au lieu d'utiliser des commutateurs de ligne de commande, mais nous sommes préoccupés par la stabilité (l'équipe Chrome aime casser régulièrement toutes ses API internes).
TL;DR
Est-il possible de faire en sorte que Chrome Headless attende quelques secondes après le chargement de la page avant de faire une capture d'écran ?