Мне нужен какой-то фрагмент PHP-скрипта (или функции), который может загружать полную веб-страницу, включая части и изображения AJAX, я имею в виду, что, указав URL-адрес, он возвращает мне полный HTML.
До сих пор я использовал «simple_html_dom» и некоторые функции на основе Curl, но ни одна из них не работает для частей AJAX.
Чтобы это работало, библиотека, вероятно, должна имитировать браузер с помощью JavaScript, загрузить страницу и дождаться загрузки/преобразования всех элементов, прежде чем принимать HTML.
Он должен быть бесплатным, в идеале с открытым исходным кодом.
Я использовал безголовый браузер PhantomJS , и он отлично подходит для подобных вещей — все, что делает браузер, предоставляется языку сценариев, а не графическому интерфейсу. Я подозреваю, что большая часть причины, по которой он работает так хорошо, заключается в том, что он использует тот же JavaScript-движок V8, что и Chrome... жаль, что это неправильный язык сценариев для вас...
Я заметил, что кто-то создал некоторые привязки PHP к Phantom API в пакете под названием PHP PhantomJS . Я не использовал его, потому что мне никогда не требовалась эта функциональность из PHP, но это, безусловно, путь, по которому я бы пошел вниз, если бы хотел использовать безголовый браузер в PHP.
Для этого я бы использовал Snoopy
Snoopy — это класс PHP, имитирующий веб-браузер. Например, он автоматизирует задачу извлечения содержимого веб-страницы и форм публикации.
Для начала я бы проверил это руководство , скажите, пожалуйста, сработает ли оно
Хьюи
can load a complete web page
? cURL легко вернет вам весь HTML-контент. Если вы действительно хотите сделать идеальную копию с идеально работающими скриптами и css, самый простой способ — просто создать файлiframe
.Хоссейн