#cookies #phantomjs
#файлы cookie #phantomjs
Вопрос:
Я довольно новичок в phantomjs. Просто начал с безголовой автоматизации приложения, над которым я работаю. Каким-то образом следующий код, похоже, отлично работает для таких сайтов, как hotmail, facebook и т. Д., Но он не работает для моего тестируемого приложения. Ниже приведен код, который я использую :-
var page = require("webpage").create();
page.settings.userAgent="Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36"
phantom.clearCookies();
phantom.cookiesEnabled = true;
var homePage = "https://www.somewebsite.com";
page.open(homePage, function(status) {
var url = page.url;
console.log("Status: " status);
console.log("Loaded: " url);
page.evaluate(function(){
document.getElementById('myUsername').value='username;
document.getElementById('myPassword').value='password';
});
page.render("before.png");
page.evaluate(function(){
document.getElementById('myLoginButton').click();
});
setTimeout(function() {
page.render("after.png");
phantom.exit();
}, 10000);
});
Я получаю сообщение об ошибке: «Ваш браузер настроен на блокировку всех файлов cookie. Пожалуйста, разрешите им войти на веб-сайт «.
Хотя я написал инструкцию «phantom.cookiesEnabled = true;», похоже, это не позволяет. Я уже пытался изменить пользовательский агент, но безуспешно. Я что-то упускаю?
Заранее спасибо, Харшит Коли
Комментарии:
1. Дополнительная информация здесь не помешает. На каком языке / платформе написано ваше приложение? Похоже, это пользовательское сообщение, написанное другим разработчиком. Попробуйте выполнить поиск по всем файлам проекта для этого сообщения, затем опубликуйте ближайший код.
Ответ №1:
Для всех, кто может столкнуться с этой проблемой. Настройка пользовательского агента для страницы должна работать
page.settings.userAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:44.0) Gecko/20100101 Firefox/44.0"
Комментарии:
1. Есть ли способ сделать это из командной строки? Я использую phantomjs с драйвером PHP в Codeception.