Этот вопрос закрыт для ответов, так как повторяет вопрос Парсинг сайта после выполнения js?
@Improbus42

PHP — Как спарсить данные после прогрузки js скриптов?

Всем доброго времени суток! Возникла проблема с парсингом данного сайта: https://cloud.sigma.ru/login Дело в том, что данные тут прогружаются в 2 этапа. Точнее, сначала одни скрипты, потом вторые. Перепробовал почти все: обычный curl( даже в ручную прописывал заголовки - возможно, неправильно), simple_html_dom, phpQuery. В итоге пришел к реализации: Selenium WebDriver + PhantomJS , НО, мне удалось прогрузить лишь 1 этап прогрузки, но это лучше, чем через curl и другие. Думаю, что нужно как-то вставить в PHP обращение к этим js скриптам, что прогружаются. Но как это сделать не знаю, так как новичок в этом. Буду рад любой помощи.

Код, который делает 1 этап:
<?php
//selenium php WebDriver
require_once('vendor/autoload.php');
   use Facebook\WebDriver\Remote\RemoteWebDriver;
   use Facebook\WebDriver\WebDriverBy;
   use Facebook\WebDriver\Remote\DesiredCapabilities;
   use Facebook\WebDriver\WebDriverExpectedCondition;

   $web_driver = RemoteWebDriver::create(
   "http://localhost:8910/wd/hub",DesiredCapabilities::firefox()
       //array("platform"=>"LINUX", "browserName" => "firefox", "version" => "71"), 920000
   );
   $web_driver->get("https://cloud.sigma.ru/login");
//sleep(30); 
$html = $web_driver->getPageSource();

echo $html;
  • Вопрос задан
  • 225 просмотров
Ответы на вопрос 1
Digiport
@Digiport
PHP рулит
Если данные подгружаются скриптами, то через PHP вы это не отловите. Парсите с помощью JS.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы