À propos du projet
Ce paquet fournit un client PHP pour le Chrome DevTools Protocol, l'interface utilisée pour contrôler les navigateurs Chrome/Chromium par programmation. Il est distribué via Composer sous le nom de paquet jakubkulhan/chrome-devtools-protocol et est sous licence MIT.
Capacités principales attestées par le README :
- Lancement d'un processus Chrome via une classe Launcher, avec un objet Context utilisé pour définir des délais d'opération (par exemple un délai d'expiration de 30 secondes).
- Ouverture et activation d'onglets sur une instance lancée, puis obtention d'un client DevTools pour cet onglet.
- Pilotage d'opérations de page telles que l'activation du domaine Page, la navigation vers une URL et l'attente de l'événement load.
- Production de sorties à partir des pages, notamment l'impression en PDF et la capture d'écrans avec un format et une qualité configurables.
- Gestion explicite du cycle de vie : le client DevTools doit être fermé, et le processus du navigateur doit être tué une fois terminé.
Contextes de navigateur isolés :
La bibliothèque prend en charge les contextes de navigateur Chrome sans interface graphique, décrits comme similaires aux fenêtres de navigation privée où les cookies et le stockage local ne sont pas partagés. Contrairement aux fenêtres de navigation privée, plusieurs contextes de navigateur isolés peuvent exister simultanément. Une session créée de cette manière implémente la même DevtoolsClientInterface que celle renvoyée par la méthode devtools() d'un onglet.
Connexion à un navigateur existant :
Une Instance peut être construite directement à partir d'un hôte et d'un port (par exemple localhost:9222), permettant au client de se connecter à un navigateur Chrome déjà en cours d'exécution. Dans ce mode, aucun nouveau processus n'est démarré, donc la fermeture de l'instance n'est pas nécessaire.
Le README présente des exemples d'utilisation en PHP couvrant la création de contexte, le lancement, la gestion des onglets, les appels DevTools et le nettoyage. Les badges d'état de build, de version stable et de licence renvoient respectivement vers CircleCI, Packagist et le fichier de licence.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.