python爬所有好友头像

import itchat

import os

import PIL.Image as Image

from os import listdir

import math

itchat.login()

# itchat.auto_login(enableCmdQR=True)  #自动登陆

friends = itchat.get_friends(update=True)[0:] # 获取好友列表  包括自己

user = friends[0]["UserName"]

# print(user) #好友名字

# exit()

os.mkdir(user)  #j 建立一个user文件夹

num = 0

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('RGBA', (640, 640))

print(numline)

x = 0

y = 0

for i in pics:

  try:

      #打开图片

      img = Image.open(user + "/" + i)

  except IOError:

      print("Error: 没有找到文件或读取文件失败")

  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 + ".bmp")

itchat.send_image(user + ".bmp", 'filehelper')

你可能感兴趣的:(python爬所有好友头像)