Tôi mới dùng các phantomj, Java script và WebScraping nói chung. Những gì tôi muốn làm là xác thực http cơ bản và sau đó truy cập một URL khác để nhận một số thông tin. Đây là những gì tôi có cho đến bây giờ. Xin vui lòng cho tôi biết những gì tôi đang làm sai.đăng nhập vào một trang web bằng cách sử dụng phantomjs và Jquery
var page = require('webpage').create();
var system = require('system');
page.onConsoleMessage = function(msg) {
console.log(msg);
};
page.onAlert = function(msg) {
console.log('alert!!>' + msg);
};
page.settings.userName = "foo";
page.settings.password = "bar";
page.open("http://localhost/login", function(status) {
console.log(status);
var retval = page.evaluate(function() {
return "test";
});
console.log(retval);
page.open("http://localhost/ticket/" + system.args[1], function(status) {
if (status === "success") {
page.injectJs("jquery.min.js");
var k = page.evaluate(function() {
var a = $("div.description > h3 + p");
if (a.length == 2) {
console.log(a.slice(-1).text())
}
else {
console.log(a.slice(-2).text())
}
//return document.getElementById('addfiles');
});
}
});
phantom.exit();
});
Tôi đang chuyển đối số cho tệp này: số vé được nối thêm vào URL thứ 2.
Có một cuộc thảo luận về chủ đề này Tôi hiện đang trải qua trên Google Groups. Tôi có thể làm cho một ý chính liên quan đến điều này: https://groups.google.com/forum/?fromgroups=#!topic/phantomjs/20z8N8rwITw –