Headless Chrome wird in Chrome 59 ausgeliefert. Es ist eine Möglichkeit, den Chrome-Browser in einer Headless-Umgebung auszuführen. Im Wesentlichen läuft Chrome ohne Chrome! Es bringt alle modernen Webplattformfunktionen von Chromium und der Blink-Rendering-Engine auf die Befehlszeile.
PHPHeadlessChrome bietet eine einfache Hilfsklasse zur Verwendung, um mithilfe einer Headless Chrome-Instanz PDF-Dateien und/oder Screenshots zu erstellen. Lösen Sie die PDF-/Screenshot-Generierung für Webseiten/String-HTML oder lokale URL aus.
Um diesen PHPHeadlessChrome Helfer zu verwenden, stellen Sie sicher, dass Google Chrome ab Version 59 korrekt installiert ist.
Installieren Sie das Paket über Composer:
composer require daandesmedt/ PHPHeadlessChrome
Stellen Sie sicher, dass Sie den Composer-Autoloader irgendwo in Ihrer Codebasis einbinden.
Verwenden Sie das PHPHeadlessChrome
-Tool, wenn Sie eine Webseite/einen HTML-Text oder eine (lokale) HTML-Datei in ein PDF oder einen Bild-Screenshot konvertieren möchten.
Arbeitsbeispiele finden Sie im examples
.
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setUrl ( ' http://www.google.be ' );
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> toPDF ( ' output.pdf ' );
print ' PDF generated to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setUrl ( ' http://www.google.be ' );
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> toScreenShot ( ' output.jpg ' );
print ' Screenshot saved to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> setHTML ( ' <h1>Headless Chrome PHP example</h1><h3>HTML to PDF</h3> ' );
$ headlessChromer -> toPDF ( ' output.pdf ' );
print ' PDF generated to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> setHTML ( ' <h1>Headless Chrome PHP example</h1><h3>HTML to PDF</h3> ' );
$ headlessChromer -> toScreenShot ( ' output.jpg ' );
print ' Screenshot saved to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> setHTMLFile ( __DIR__ . ' assetsHTMLFile.html ' );
$ headlessChromer -> toPDF ( ' output.pdf ' );
print ' PDF generated to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> setHTMLFile ( __DIR__ . ' assetsHTMLFile.html ' );
$ headlessChromer -> toScreenShot ( ' output.jpg ' );
print ' Screenshot saved to : ' . $ headlessChromer -> getFilePath ();
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
use daandesmedt PHPHeadlessChrome HeadlessChrome ;
$ headlessChromer = new HeadlessChrome ();
$ headlessChromer -> setBinaryPath ( ' C:Program Files (x86)GoogleChromeApplicationchrome ' );
$ headlessChromer -> setOutputDirectory ( __DIR__ );
$ headlessChromer -> setHTMLFile ( __DIR__ . ' assetsHTMLFile.html ' );
var_dump ( $ headlessChromer -> getDOM ());
$ headlessChromer -> useMobile ();
$ headlessChromer -> setWindowSize ( 375 , 667 );
$ headlessChromer -> disablePDFHeader ();