python的facebook聊天(messenger)
FBBack的Python项目详细描述
python的facebook聊天(Messenger)。这个项目的灵感来自facebook-chat-api。 f b back(pronuce f-b-back)是从金大勋(/@carpedm20)的fbchat叉开的。
不需要xmpp或api密钥。只要用你的身份证和密码。
安装
简单:
$ pip install FBBack
示例
importFBBackclient=FBBack.Client("YOUR_ID","YOUR_PASSWORD")
发送消息
friends=client.getUsers("FRIEND'S NAME")# return a list of namesfriend=friends[0]sent=client.send(friend.uid,"Your Message")ifsent:print("Message sent successfully!")# IMAGESclient.sendLocalImage(friend.uid,message='<message text>',image='<path/to/image/file>')# send local imageimgurl="http://i.imgur.com/LDQ2ITV.jpg"client.sendRemoteImage(friend.uid,message='<message text>',image=imgurl)# send image from image url
从用户ID获取用户信息
friend1=client.getUsers('<friend name 1>')[0]friend2=client.getUsers('<friend name 2>')[0]friend1_info=client.getUserInfo(friend1.uid)# returns dict with detailsboth_info=client.getUserInfo(friend1.uid,friend2.uid)# query both together, returns list of dictsfriend1_name=friend1_info['name']
获取最近发送的消息
last_messages=client.getThreadInfo(friend.uid,0)last_messages.reverse()# messages come in reversed orderformessageinlast_messages:print(message.body)
Echobot示例
importFBBack# Subclass FBBack.Client and override required methodsclassEchoBot(FBBack.Client):def__init__(self,email,password,debug=True,user_agent=None):FBBack.Client.__init__(self,email,password,debug,user_agent)defon_message(self,mid,author_id,author_name,message,metadata):self.markAsDelivered(author_id,mid)#mark deliveredself.markAsRead(author_id)#mark readprint("%s said: %s"%(author_id,message))#if you are not the author, echoifstr(author_id)!=str(self.uid):self.send(author_id,message)bot=EchoBot("<email>","<password>")bot.listen()