有一个国家网站gov.kz。我想从那里获取信息并将其粘贴到我的项目中,以便有关状态服务的所有信息都将放在一个方便的地方。以前,状态站点位于不同的域中,并且一切都与 Simple HTML DOM 库配合良好。现在他们已经更改了站点,我无法使用 Simple DOM、cURL 或 phantomjs 进行解析。问题是通过 phantomjs 的解析算法适用于除此之外的所有其他站点。感觉 index.html 在没有填充上下文的情况下被解析(我不知道,也许站点脚本没有运行)。我附上下面的代码。PS 我尝试了此代码的不同变体,但没有帮助。
获取网站.php:
$response = [];
exec ($_SERVER['DOCUMENT_ROOT'].'phantomjs --debug=no --ignore-ssl-errors=yes get-website.js 2>&1',$response);
var_dump($response);
获取网站.js:
var page = require('webpage').create();
page.settings.javascriptEnabled=true;
page.settings.userAgent='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36';
page.settings.loadImages= true;
page.settings.cookiesEnabled=true;
page.viewportSize = {
width: 1366,
height: 768
};
page.open('https://gov.kz');
page.onLoadFinished = function (status) {
if (status !== 'success') {
console.log('Unable to load the address!');
phantom.exit();
} else {
var content = page.content;
console.log('Content: ' + content);
page.evaluate(function() {
});
page.render('image.png');
phantom.exit();
}
};