- 爬取微信好友头像
首先,需安装 Itchat 和 Matplotlib 库。接着,在 Itchat 库中使用 get_head_img 方法来获取头像二进制图片,然后使用 Matplotlib 库将图片进行展示。
import itchat
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
# 登录微信账号
itchat.auto_login(hotReload=True)
# 获取好友头像
friends = itchat.get_friends(update=True)
imgList = []
for friend in friends:
img = itchat.get_head_img(userName=friend['UserName'])
imgList.append(img)
# 将头像图片展示出来
for i, img in enumerate(imgList):
# 将二进制图片转为 numpy 数组
imgArr = np.frombuffer(img, dtype=np.uint8)
imgArray = np.reshape(imgArr, newshape=(96, 96, 3))
imgArray = np.rot90(imgArray, -1)
# 展示图片
plt.subplot(5, 8, i+1)
plt.imshow(imgArray)
plt.axis('off')
plt.show()
- 统计好友性别分布
利用 Itchat 库获取好友信息,然后使用 Matplotlib 库将性别分布进行饼状图展示。
import itchat
import matplotlib.pyplot as plt
# 登录微信账号
itchat.auto_login(hotReload=True)
# 获取好友信息
friends = itchat.get_friends(update=True)
# 统计性别分布
sexDict = {'unknown': 0, 'male': 0, 'female': 0}
for friend in friends[1:]:
sex = friend['Sex']
if sex == 0:
sexDict['unknown'] += 1
elif sex == 1:
sexDict['male'] += 1
elif sex == 2:
sexDict['female'] += 1
# 将性别分布进行饼状图展示
labels = ['unknown', 'male', 'female']
sizes = [sexDict[label] for label in labels]
plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.axis('equal')
plt.show()
以上这两个示例均使用了 Itchat 和 Matplotlib 库,利用 Itchat 库进行微信信息的爬取,用 Matplotlib 库展示获取到的数据,可以起到很好的数据分析的作用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:itchat和matplotlib的结合使用爬取微信信息的实例 - Python技术站