我试图找出如何使用PhantomJS。我编写了下面的脚本来尝试自动发布Facebook状态。据我所知,该脚本甚至没有登录,我不确定为什么。我的代码如下:
var page = require('webpage').create();
page.open('https://www.facebook.com/', function() {
page.includeJs("//code.jquery.com/jquery-1.11.0.min.js", function() {
page.evaluate(function() {
// Login
$('#email').val('email_here'); // Set email
$('#pass').val('password_here'); // Set PW
$('#u_0_4').click();
// Set status
$('#u_0_1p').val('123');
$('#u_0_1f').submit();
});
phantom.exit()
});
});
我不确定为什么脚本无法正常工作,甚至无法获得某种错误信息输出,因此我可以弄清楚为什么我的脚本无法正常工作。
答案 0 :(得分:1)
以下是登录Facebook的代码我已经在javascript登录了这个并且拍了你的facebook主页的屏幕截图..
var page = require('webpage').create();
var fillLoginInfo = function(){
var frm = document.getElementById("login_form");
frm.elements["email"].value = 'your fb email/username';
frm.elements["pass"].value = 'password';
frm.submit();
}
page.onLoadFinished = function(){
if(page.title == "Welcome to Facebook - Log In, Sign Up or Learn More"){
page.evaluate(fillLoginInfo);
return;
}
else
page.render('./screens/some.png');
console.log("completed");
phantom.exit();
}
page.open('https://www.facebook.com/');
在Github上找到这个:https://github.com/manishjo/Automation/blob/master/facebook_automation/fbScreenshot.js
登录后仍尝试查找如何发布消息。
谢谢, Manish Joshi