Парсинг динамически загружаемого веб-сайта с помощью php curl

Я новичок в парсинге и официально удалил два веб-сайта. Но проблема возникла у меня, когда я попытался парсить сайты с динамической загрузкой. Когда веб-сайт отображается с помощью JavaScript, я не могу очистить содержимое веб-сайта.

Можно ли как-то очистить содержимое этого веб-сайта с помощью php curl или любого другого клиента, связанного с PHP?

Вот что я сделал до сих пор:

$link = "https://www.glassdoor.com/Job/jobs.htm?suggestCount=0&suggestChosen=false&clickSource=searchBtn&typedKeyword=android+developer&sc.keyword=android+developer&locT=N&locId=192&jobType=";

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch,CURLOPT_URL,$link);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13");
$data = curl_exec($ch);


$document = new DOMdocument();
libxml_use_internal_errors(true);
$document->loadHTML($data);
$elements = $document->getElementsByTagName("div");

foreach($elements as $element){
  	echo $element->nodeValue."<br>";;
}


person Shehny Khan    schedule 01.03.2018    source источник
comment
Проведите небольшое исследование, пожалуйста... google.com/search?q =очистить+веб-сайт+наполняется+с помощью+javascript   -  person CBroe    schedule 01.03.2018


Ответы (1)


Для этого вам нужен безголовый браузер, вы можете использовать PHP Wrapper для PhantomJS , вот ссылка http://jonnnnyw.github.io/php-phantomjs/. Это решит вашу проблему. Он имеет следующие особенности:

  • Загружайте веб-страницы через безголовый браузер PhantomJS.
  • Просмотр подробных данных ответа, включая содержимое страницы, заголовки, код состояния и т. д.
  • Обрабатывать перенаправления
  • Просмотр ошибок консоли javascript

Надеюсь это поможет.

person Faraz Irfan    schedule 14.03.2018