Python-itchat获取微信好友信息

参考自:http://www.jianshu.com/p/684cbdf15874
思路就是通过itchat登录获取微信好友信息,然后通过pillow画图

import itchat
import math
import PIL.Image as Image
import os
# hotReload=True  # 使用这个属性,生成一个静态文件itchat.pkl,用于存储登陆的状态。
itchat.auto_login(hotReload=True)
friends = itchat.get_friends(update=True)[0:]
path = 'G:/python/image/'
for item in friends:
    # 可以打印item来看其中具体是什么内容,有什么字段
    img = itchat.get_head_img(userName=item['UserName'])
    with open(path + item['NickName'] + '.jpg', 'wb') as f:
        f.write(img)
# 获取好友昵称和签名
info = [(item['NickName'], item['Signature']) for item in friends]
# 获取文件夹中所有的图片
ls = os.listdir(path)
img_num = len(ls)
# 每张小图片宽
size = 60
#每行放几张
lines = 10
# 大图宽
width = 600
# 大图长
height = math.ceil(img_num/10)*60
# 画一个大图,用来放小头像
image = Image.new('RGBA', (width, height))
x = 0
y = 0
for i in range(0, len(ls)):
    img = Image.open(path + info[i][0] + '.jpg')
    img = img.resize((size, size), Image.ANTIALIAS)
    # 向指定位置放缩小后的图片
    image.paste(img, (x * size, y * size))
    x += 1
    if x == lines:
        x = 0
        y += 1
image.save(path + 'friends.jpg')
# 通过文件助手发给自己
itchat.send_image(path + 'friends.jpg', 'filehelper')

你可能感兴趣的:(Python-itchat获取微信好友信息)