Я пытаюсь войти в facebook с помощью phantomJS, она работает нормально, но когда я запустил ее, не отправляйте форму.Форма входа в систему phantomJS не полностью отправлена
Открывает страницу, заполняет поля, но не отправляет. Я попробовал консоль, чтобы увидеть, как она отправляет его обратно, а затем отправляется.
var page = require('webpage').create();
var system = require('system');
var stepIndex = 0;
var loadInProgress = false;
email = system.args[1];
password = system.args[2];
page.onLoadStarted = function() {
loadInProgress = true;
console.log("load started");
};
page.onLoadFinished = function() {
loadInProgress = false;
console.log("load finished");
};
var steps = [
function() {
page.open("http://www.facebook.com/login.php", function(status) {
page.evaluate(function(email, password) {
document.querySelector("input[name='email']").value = email;
document.querySelector("input[name='pass']").value = password;
document.querySelector("#login_form").submit();
console.log("Login submitted!");
}, email, password);
page.render('output.png');
});
},
function() {
console.log(document.documentElement.innerHTML);
},
function() {
phantom.exit();
}
]
setInterval(function() {
if (!loadInProgress && typeof steps[stepIndex] == "function") {
console.log("step " + (stepIndex + 1));
steps[stepIndex]();
stepIndex++;
}
if (typeof steps[stepIndex] != "function") {
console.log("test complete!");
phantom.exit();
}
}, 10000);
Спасибо за тонну, Вы прекрасны, когда я упомянул страницу в другой функции я получаю страница не является переменной/Undefine, но ваш работает прекрасно. @Artjom B. –
B, спасибо за большую поддержку. Я могу войти на эту страницу с помощью вашего ответа, но почему он не работает на www.facebook.com для входа в систему. Он работает только на www.facebook.com/login.php –
Я не знаю. Возможно, есть какая-то переадресация, которую PhantomJS не может выполнить. –