好的,我很清楚关于这个问题还有很多其他的问题,但我一直在寻找,还没有找到一个可靠的正确的答案,而不是围绕jabber或更糟糕的东西。(无意冒犯jabber用户,只是我不想要它附带的所有额外功能)
我目前有msnp和twisted.words,我只是想发送和接收消息,我已经阅读了许多失败的示例,msnp的文档很少。
我的首选是msnp,因为它需要的代码要少得多,我不是在寻找复杂的东西。
使用此代码,我可以登录并查看我的在线朋友(但不能向他们发送消息。):
import msnp
import time, threading
msn = msnp.Session()
msn.login('XXXXXXX@hotmail.com', 'XXXXXX')
msn.sync_friend_list()
class MSN_Thread(threading.Thread):
def run(self):
msn.start_chat("XXXXXXX@hotmail.com") #this does not work
while True:
msn.process()
time.sleep(1)
start_msn = MSN_Thread()
start_msn.start()我希望我已经说得足够清楚了,现在已经很晚了,在经历了所有msn的挫折之后,我的头脑还不清楚。
编辑:既然msnp似乎已经非常过时了,有没有人可以推荐一些简单的例子来说明我是如何做到这一点的?不需要任何花哨的东西,需要其他帐户。
发布于 2010-12-24 11:57:27
还有用于gmail的xmpp。
发布于 2010-07-06 20:40:56
你使用的是2004年废弃的库,所以我不确定msnp是否还能用来在MSN上说话。
无论如何,我会尝试这样做:
while True:
msn.process(chats = True)
time.sleep(1)使用联系人id而不是电子邮件地址。
contacts = msn.friend_list.get_friends()
contact_id = contacts.get_passport_id() 您的代码只是开始聊天而不发送任何内容;您需要添加代码来发送消息。
看看this教程中的send_message方法。
发布于 2010-08-29 21:08:42
看起来papyon是pymsn库的一个维护分支,目前由telepathy- fork和amsn2使用。
MSN papyon是一个
客户端库,它试图抽象MSN协议的血腥细节。它是未经维护的pymsn MSN库的一个分支。
使用GLib主事件循环以异步方式处理网络事件。papyon
https://stackoverflow.com/questions/3186129
复制相似问题