2014-06-10 67 views
0

我想弄清楚如何使用PhantomJS。我編寫了下面的腳本來嘗試自動發佈Facebook狀態。據我所知,該腳本甚至沒有登錄,我不確定爲什麼。我的代碼如下:發佈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() 
    }); 
}); 

我不知道爲什麼腳本將無法正常工作,甚至得到某種錯誤信息的輸出,所以我可以找出爲什麼我的腳本不能正常工作。

回答

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