Пакет может конвертировать веб-страницу в изображение или PDF. Преобразование выполняется «за кулисами» Puppeteer, который управляет «безголовой» версией Google Chrome.
Вот краткий пример:
используйте SpatieBrowsershotBrowsershot;// изображение будет сохраненоBrowsershot::url('https://example.com')->save($pathToImage);
Он сохранит PDF-файл, если путь, переданный методу save
, имеет расширение pdf
.
// PDF-файл будет сохраненBrowsershot::url('https://example.com')->save('example.pdf');
Вы также можете использовать произвольный ввод HTML, просто замените метод url
на html
:
Browsershot::html('<h1>Привет, мир!!</h1>')->save('example.pdf');
Если ваш ввод HTML уже находится в файле локально, используйте:
Browsershot::htmlFromFilePath('/local/path/to/file.html')->save('example.pdf');
Browsershot также может получить тело html-страницы после выполнения JavaScript:
Browsershot::url('https://example.com')->bodyHtml(); // возвращает html тела
Если вы хотите получить список массивов со всеми запросами, инициированными страницей, вы можете сделать это:
$requests = Browsershot::url('https://example.com') ->triggeredRequests();foreach ($requests as $request) {$url = $request['url']; //https://example.com/
Чтобы использовать новый безголовый режим Chrome, передайте метод newHeadless
:
Browsershot::url('https://example.com')->newHeadless()->save($pathToImage);
Узнайте, как создать подобную упаковку, посмотрев наш премиум-видеокурс:
Мы вкладываем много ресурсов в создание лучших в своем классе пакетов с открытым исходным кодом. Вы можете поддержать нас, купив один из наших платных продуктов.
Мы очень признательны вам за отправку нам открытки из вашего родного города с указанием того, какой из наших пакетов вы используете. Наш адрес вы найдете на странице контактов. Все полученные открытки мы публикуем на нашей виртуальной стене открыток.
Вся документация доступна на нашем сайте документации.
Для запуска набора тестов вам потребуется установить Puppeteer. Пожалуйста, ознакомьтесь с требованиями к Browsershot здесь. Обычно npm -gi puppeteer
помогает.
Кроме того, вам понадобится интерфейс командной строки pdftotext
, который является частью пакета poppler-utils. Дополнительную информацию можно найти в файле readme spatie/pdf-to-text. Обычно достаточно утилиты brew install poppler-utils
.
Наконец, запустите тесты с помощью:
композиторский тест
Пожалуйста, смотрите ВКЛАД для получения подробной информации.
Если вы обнаружили ошибку, связанную с безопасностью, отправьте электронное письмо по адресу [email protected] вместо использования системы отслеживания проблем.
Если вы не можете установить Node и Puppeteer, взгляните на версию 2 браузерного снимка, в которой для создания снимка экрана используется безголовый интерфейс командной строки Chrome. v2
больше не поддерживается, но должна работать очень хорошо.
Если использование Headless Chrome не работает, взгляните на v1
этого пакета, в которой используется заброшенный двоичный файл PhantomJS
.
Фрик Ван дер Хертен
Все участники
И отдельное спасибо Caneco за логотип.
Лицензия MIT (MIT). Пожалуйста, смотрите файл лицензии для получения дополнительной информации.