2014-09-05 104 views
0

我有一個Python程序,我已經詳細存儲了我的日誌,如何獲取python程序連接到Facebook登錄頁面並輸入我的日誌詳細信息,然後登錄或返回一些內容?如何使用python程序登錄Facebook?

E.g:

我的個人資料都在我的主程序(電子郵件和密碼),然後我想連接到Facebook,並有我的程序輸入詳細信息併發送關閉到Facebook。

主要的Python文件:

import urllib 
import urllib2 
def facebookDetails(): 
    url = 'https://www.facebook.com/' 

    values = {'email' : '[email protected]', 
       'pass' : 'password', 
      } 
    data = urllib.urlencode(values) 
    req = urllib2.Request(url, data) 
    response = urllib2.urlopen(req) 
    the_page = response.read() 
+0

看看[硒(http://selenium-python.readthedocs.org/) – ZWiki 2014-09-05 15:21:46

+0

好的謝謝,我的快速閱讀,但我真的不明白它,我將如何使用我的代碼呢? – 2014-09-05 15:25:09

+0

考慮使用Facebook API。它更簡單易用。 – Saish 2014-09-05 20:49:50

回答

2

下面是使用硒的例子:

from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 


if __name__ == '__main__': 
    iuser = 'username' 
    ipass = 'password' 
    # You will also need to download PhantomJS 
    driver = webdriver.PhantomJS(pathToPhantomJS.exe) 
    driver.get('https://www.facebook.com/') 
    email = driver.find_element_by_xpath('//*[@id="email"]') 
    email.send_keys(iuser) 
    password = driver.find_element_by_xpath('//*[@id="pass"]') 
    password.send_keys(ipass) 

    login_button = driver.find_element_by_xpath('//*[@id="u_0_n"]') 
    login_button.click() 
+0

它打開我的網頁瀏覽器,但不加載網址?我該如何解決? – 2014-09-05 17:05:20

+0

'driver.get(url)'會加載url。您爲您的網絡瀏覽器提供了.exe文件? – ZWiki 2014-09-05 17:11:49

+0

是的,但我用firefox而不是那phantomJS會導致一個問題? – 2014-09-05 17:19:01