Если я перехожу на следующую веб-страницу в Chrome, она нормально загружается: https://www.cruisemapper.com/?poi=39
Однако, когда я запускаю следующий скрипт PhantomJS, который просто переходит на тот же URL-адрес и выводит всю строку DOMна консоль я получаю сообщение 403 Forbidden:
var page = require('webpage').create(),
url = 'https://www.cruisemapper.com/?poi=39';
page.open(url, function (status) {
if (status === 'success') {
console.log(page.evaluate(function () {
return document.documentElement.outerHTML;
}));
phantom.exit();
}
});
Вот точный вывод на консоль:
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.<br>
</p>
</body></html>
Я думал, что если я добавлю какую-то строку пользовательского агента,это может сработать.Таким образом, я добавил следующую строку над строкой console.log:
page.settings.userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36';
Но это не сработало.Тогда я попробовал следующее:
page.customHeaders = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
};
Но это тоже не сработало.У кого-нибудь есть какие-либо советы о том, как я могу найти указанный выше URL-адрес и не получить сообщение 403 Forbidden?Спасибо.