Простой HTML DOM и curl: как получить контент, когда на веб-сайте загружен код ajax?

Итак, в прошлом я делал несколько парсеров, но каждый созданный мной парсер берет контент с не динамически загружаемой страницы. В основном страница, не использующая ajax.

Но сейчас ищу решения почти 2 дня и не могу найти. На странице, которую я пытаюсь загрузить и использовать информацию, есть контент, загруженный из ajax. Итак, в основном, когда вы переходите на эту страницу, она загружает контент, а таблица, которую мне нужно получить, загружается с помощью ajax при загрузке страницы.

И похоже, что curl не понимает, что содержимое страницы, которое мне нужно, загружается динамически, поэтому я всегда получаю ответ boolean:false или property does not exists.

Это код, который я пытаюсь получить.

    $requ = require_once( get_template_directory() . '/includes/simple_html_dom.php' );
    $getfeed = curl_init();
    curl_setopt($getfeed, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
    curl_setopt($getfeed, CURLOPT_URL, 'http://wizzair.com/');
    curl_setopt($getfeed, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($getfeed, CURLOPT_CONNECTTIMEOUT, 20);
    $str = curl_exec($getfeed);
    curl_close($getfeed);

    $html = str_get_html($str);

    foreach($html->find('div.fare-finder__calendar__days__day__container') as $key => $value) {
         print_r($value);
    }

Итак, есть ли способ дать понять, что контент загружается с помощью ajax на этой странице, чтобы хотя бы заставить curl подождать несколько секунд, прежде чем он загрузит страницу?


person lonerunner    schedule 28.06.2017    source источник
comment
Здесь есть несколько вопросов по этому поводу. Вы видели этот?   -  person Don't Panic    schedule 29.06.2017
comment
Может быть, вам подойдет что-то вроде phantomjscloud.   -  person pguardiario    schedule 29.06.2017
comment
Я вижу, что это может быть хорошим решением с чем-то вроде phantomjscloud, и я только что попробовал, но он не работает специально с веб-сайтом wizzair.com.   -  person lonerunner    schedule 29.06.2017
comment
что ты уже испробовал? Где ты застрял? cURL обычно вообще не интерпретирует какой-либо JS-код   -  person Nico Haase    schedule 08.06.2021