为了账号安全,请及时绑定邮箱和手机立即绑定

itchat+pillow实现微信好友头像爬取和拼接

标签:
Python

itchat+pillow实现微信好友头像爬取和拼接

coding:utf-8

from numpy import *
import itchat
import urllib
import requests
import os
from PIL import Image
from os import listdir
import math

微信扫描登录

itchat.auto_login(hotReload=True)

获取微信好友列表

friends = itchat.get_friends(update=True)[0:]

user = 'images'
if os.path.exists(user) == False:
os.mkdir(user)

爬取微信好友头像图片,下载保存到本地

num = 1
for i in friends:
img = itchat.get_head_img(userName=i["UserName"])
fileImage = open(user + "/" + str(num) + ".jpg",'wb')
fileImage.write(img)
fileImage.close()
num += 1

pics = listdir(user)

微信好友个数

numPic = len(pics)
print(numPic)

微信好友头像缩小后,每个头像的大小

eachsize = int(math.sqrt(float(640 * 640) / numPic))

print(eachsize)

每行头像的个数

numline = int(640 / eachsize)

toImage = Image.new('RGB', (640, 640))

print(numline)

x = 0
y = 0

for i in pics:
try:

打开图片
    img = Image.open(user + "/" + i)
except IOError:
    print("Error: 没有找到文件或读取文件失败"+i)
else:
    #缩小图片
    img = img.resize((eachsize, eachsize), Image.ANTIALIAS)
    #拼接图片
    toImage.paste(img, (x * eachsize, y * eachsize))
    x += 1
    if x == numline:
        x = 0
        y += 1

toImage.save(user + ".jpg")
itchat.send_image(user + ".jpg", 'filehelper')

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消