用python msnlib抓取联系人

[url]http://blitiri.com.ar/p/msnlib/[/url]

This is an opensource Python implementation for the MSN messenger protocol version 8.
The base is a library (called msnlib), which uses a non-blocking callback scheme.
库能用,不过文档一无所有,演示代码也不清晰,和tk写的图像界面混在一起.
不过能用就好.

import socket
import select
import time

import msnlib
import msncb

def void(s): pass
msnlib.debug = msncb.debug = void


def msn_friend_list(email,password):
m = msnlib.msnd()
m.cb = msncb.cb()

m.email = email.strip()
m.pwd = password.strip()
m.encoding = 'utf-8'
try:
m.login()
m.sync()
except:
return False
m.change_status('invisible')

begin_time = time.time()

users = set()
while 1:
fds = m.pollable()
infd = fds[0]
outfd = fds[1]

fds = select.select(infd, outfd, [], 0)

for i in fds[0] + fds[1]:
try:
m.read(i)
except ('SocketError', socket.error), err:
if i != m:
m.close(i)
merge_users=users|set(m.users.keys())
if len(users) == len(merge_users):
end_time = time.time()
if len(users):
if end_time-begin_time >= 2:
break
elif end_time-begin_time >= 3:
break
time.sleep(0.05)
else:
users = merge_users
begin_time=time.time()
result={}
for i in users:
result[i]=m.users[i].nick

return result
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值