Das Paket kann eine Webseite in ein Bild oder PDF konvertieren. Die Konvertierung wird hinter den Kulissen von Puppeteer durchgeführt, der eine Headless-Version von Google Chrome steuert.
Hier ist ein kurzes Beispiel:
use SpatieBrowsershotBrowsershot;// ein Bild wird gespeichertBrowsershot::url('https://example.com')->save($pathToImage);
Es wird ein PDF gespeichert, wenn der an die save
übergebene Pfad eine pdf
Erweiterung hat.
// ein PDF wird gespeichertBrowsershot::url('https://example.com')->save('example.pdf');
Sie können auch eine beliebige HTML-Eingabe verwenden. Ersetzen Sie einfach die url
-Methode durch html
:
Browsershot::html('<h1>Hallo Welt!!</h1>')->save('example.pdf');
Wenn sich Ihre HTML-Eingabe bereits lokal in einer Datei befindet, verwenden Sie Folgendes:
Browsershot::htmlFromFilePath('/local/path/to/file.html')->save('example.pdf');
Browsershot kann auch den Text einer HTML-Seite abrufen, nachdem JavaScript ausgeführt wurde:
Browsershot::url('https://example.com')->bodyHtml(); // gibt den HTML-Code des Körpers zurück
Wenn Sie eine Array-Liste mit allen von der Seite ausgelösten Anfragen abrufen möchten, können Sie Folgendes tun:
$requests = Browsershot::url('https://example.com') ->triggeredRequests();foreach ($requests as $request) {$url = $request['url']; //https://example.com/}
Um den neuen Headless-Modus von Chrome zu verwenden, übergeben Sie die newHeadless
-Methode:
Browsershot::url('https://example.com')->newHeadless()->save($pathToImage);
Erfahren Sie, wie Sie ein Paket wie dieses erstellen, indem Sie sich unseren Premium-Videokurs ansehen:
Wir investieren viele Ressourcen in die Erstellung erstklassiger Open-Source-Pakete. Sie können uns unterstützen, indem Sie eines unserer kostenpflichtigen Produkte kaufen.
Wir freuen uns sehr, dass Sie uns eine Postkarte aus Ihrer Heimatstadt schicken und erwähnen, welches unserer Pakete Sie verwenden. Unsere Adresse finden Sie auf unserer Kontaktseite. Wir veröffentlichen alle erhaltenen Postkarten auf unserer virtuellen Postkartenwand.
Die gesamte Dokumentation ist auf unserer Dokumentationsseite verfügbar.
Zum Ausführen der Testsuite muss Puppeteer installiert sein. Bitte beachten Sie die Browsershot-Anforderungen hier. Normalerweise reicht npm -gi puppeteer
aus.
Darüber hinaus benötigen Sie die pdftotext
CLI, die Teil des Pakets „popppler-utils“ ist. Weitere Informationen finden Sie in der Readme-Datei spatie/pdf-to-text. Normalerweise reichen brew install poppler-utils
aus.
Führen Sie abschließend die Tests durch mit:
Komponistentest
Weitere Informationen finden Sie unter BEITRAGEN.
Wenn Sie einen Sicherheitsfehler gefunden haben, senden Sie bitte eine E-Mail an [email protected], anstatt den Issue-Tracker zu verwenden.
Wenn Sie Node und Puppeteer nicht installieren können, werfen Sie einen Blick auf Version 2 von Browsershot, das die Headless-CLI von Chrome verwendet, um einen Screenshot zu erstellen. v2
wird nicht mehr gepflegt, sollte aber recht gut funktionieren.
Wenn die Verwendung von Headless Chrome für Sie nicht funktioniert, werfen Sie einen Blick auf v1
dieses Pakets, das die veraltete PhantomJS
Binärdatei verwendet.
Freek Van der Herten
Alle Mitwirkenden
Und ein besonderer Dank geht an Caneco für das Logo
Die MIT-Lizenz (MIT). Weitere Informationen finden Sie in der Lizenzdatei.