使用Python请求登录Facebook的程序

时间:2017-05-09 07:34:00

标签: python facebook

我尝试使用Python请求制作脚本来登录Facebook。通过使用Firebug分析登录POST,我发现它还发送了一些其他输入。我使用BS4模块从登录表单中提取值,准备一个加载,并使用requests.session()发送它。但是当我返回URL时,它返回了表单的操作链接。我究竟做错了什么?任何帮助表示赞赏:)

代码:

#facebook login
import requests
from bs4 import BeautifulSoup as bs

url='http://www.facebook.com'

headers={'User-Agent':'Mozilla/5.0'}

r=requests.get(url)

soup=bs(r.text,'html.parser')

ft='login_form'

form=soup.find('form',{'id':'login_form'})


inputs=form.find_all('input')

load={}

for i in inputs:
    load[i.get('name')]=i.get('value')

e=input('enter email')

p=input('enter password')

load['email']=e
load['pass']=p
s=requests.session()
r=s.post(form.get('action'),data=load,headers=headers)
print(r.url) #to verify login

s.close()

1 个答案:

答案 0 :(得分:1)

我自己找到了解决方案。 Facebook需要cookie和输入负载。我从初始获取请求中提取了cookie并将其与帖子一起传递。