Скребущая экранная страница JS

Я пытаюсь очистить эту страницу http://www.buddytv.com/trivia/game-of-thrones-trivia.aspx, и она не работает.

Я пытался

$html = new simple_html_dom(); $html->load_file($url); 

Но вопрос, который я ищу, чтобы схватить (. Trivia-question), не может быть найден. Может ли кто-нибудь сказать мне, что я делаю неправильно?

Большое спасибо!

И я попробовал

  <?php $Page = file_get_contents('http://www.buddytv.com/trivia/game-of-thrones-trivia.aspx'); $dom_document = new DOMDocument(); //errors suppress because it is throwing errors due to mismatched html tags @$dom_document->loadHTML($Page); $dom_xpath_admin = new DOMXpath($dom_document_admin); $elements = $dom_xpath->query('//*[@id="id60questionText"]'); var_dump($elements); 

Итак, вот пример фантомов:

Вам нужно скачать phantomjs из: http://phantomjs.org/ , где-нибудь, где вы можете легко получить доступ к скрипту.

Проверьте его, запустив {installationdir} / bin / phantomjs (phantomjs.exe на windows) –версия

Затем создайте файл JS где-нибудь в своем проекте, ex browser.js

 var page = require('webpage').create(); page.open('http://www.buddytv.com/trivia/game-of-thrones-trivia.aspx', function() { page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() { search = page.evaluate(function() { return $('#id60questionText').text(); }); console.log(search); phantom.exit() }); }) 

Затем в вашем скрипте PHP прочитайте его так:

 $pathToPhatomJs = '/home/aurimas/Downloads/phantomjs/phantomjs-1.9.1-linux-x86_64/bin/phantomjs'; $pathToJsScript = '/home/aurimas/Downloads/phantomjs/phantomjs-1.9.1-linux-x86_64/browser.js'; $stdOut = exec(sprintf('%s %s', $pathToPhatomJs, $pathToJsScript), $out); echo $stdOut; 

Измените $pathToPhatomJs и $pathToJsScript соответствии с вашей конфигурацией.

Если вы находитесь в окнах, это может не сработать. Затем вы можете сменить PHP-скрипт на:

 $pathToPhatomJs = '/home/aurimas/Downloads/phantomjs/phantomjs-1.9.1-linux-x86_64/bin/phantomjs'; $pathToJsScript = '/home/aurimas/Downloads/phantomjs/phantomjs-1.9.1-linux-x86_64/browser.js'; exec(sprintf('%s %s > phatom.txt', $pathToPhatomJs, $pathToJsScript), $out); $fileContents = file_get_contents('phatom.txt'); echo $fileContents;