03.使用python的第三方库itchat获取全部微信好友头像,并拼接成大图

简介: 03.使用python的第三方库itchat获取全部微信好友头像,并拼接成大图

目的

为第四步过滤非人脸图片做准备。

安装第三方库itchat

pip install itchat

代码


注意,首先项目目录下要创建一个user目录,用来保存获取的微信好友头像。

#导入对应的包
import itchat
import PIL.Image as Image
from os import listdir
def get_imgs():#完成主要的下载头像的任务
    #每次都需要扫描二维码,方便切换微信账号测试
    itchat.auto_login(hotReload=False)
    #获取朋友列表(只获取256个),返回字典类型的数据集,获取好友的索引数
    friends = itchat.get_friends(update=True)[0:256]
    #为图片命名的变量
    num = 0
    #遍历好友列表
    for friend in friends:
        #获取好友的头像
        img = itchat.get_head_img(userName=friend["UserName"])
        #在项目文件的主创建一个user文件用于放头像,并写入对应的图片名,空白的
        fileImage = open( "./user/" + str(num) + ".jpg",'wb')
        #将获取到的头像文件写到创建的图片文件中
        fileImage.write(img)
        #关闭资源
        fileImage.close()
        num += 1
#制作大的大头像
def get_big_img():
    #获取usr文件夹所有文件的名称
    pics = listdir("user")
    #创建图片大小
    toImage = Image.new("RGB", (800, 800))
    #用于图片的位置
    x = 0
    y = 0
    #遍历user文件夹的图片
    for pic in pics:
        #依次打开图片
        img = Image.open("user/{}".format(pic))
        #重新设置图片的大小
        img = img.resize((50, 50), Image.ANTIALIAS)
        #将图片粘贴到最后的大图片上,需要注意对应的位置
        toImage.paste(img, (x * 50, y * 50))
        #设置每一行排16个图像
        x += 1
        if x == 16:
            x = 0
            y += 1
    #保存图片为bigPhoto.jpg
    toImage.save("user/" +"bigPhoto.jpg")
    #将做好图片发送东自己的手机上
    itchat.send_image("user/" +"bigPhoto.jpg", 'filehelper')
#定义执行的主函数
def main():
    get_imgs()
    get_big_img()
#运行
if __name__=="__main__":
    main()


目录
相关文章
|
数据采集 存储 C++
Python异步爬虫(aiohttp)加速微信公众号图片下载
Python异步爬虫(aiohttp)加速微信公众号图片下载
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
数据采集 监控 调度
应对频率限制:设计智能延迟的微信读书Python爬虫
应对频率限制:设计智能延迟的微信读书Python爬虫
|
监控 数据安全/隐私保护 Python
微信自动抢红包免费版,2025微信抢红包神器,微信红包挂苹果版【python仅供学习】
这个模拟项目包含5个模块:核心监控逻辑、用户界面、配置管理、实用工具和主程序入口
|
监控 数据库 数据安全/隐私保护
微信自动抢红包永久免费软件, 自动抢红包软件微信,脚本插件抢红包【python】
该实现包含三个核心模块:主监控程序、数据库记录模块和配置模块。主程序使用itchat监听微信消息
|
自然语言处理 搜索推荐 小程序
微信公众号接口:解锁公众号开发的无限可能
微信公众号接口是微信官方提供的API,支持开发者通过编程与公众号交互,实现自动回复、消息管理、用户管理和数据分析等功能。本文深入探讨接口的定义、类型、优势及应用场景,如智能客服、内容分发、电商闭环等,并介绍开发流程和工具,帮助运营者提升用户体验和效率。未来,随着微信生态的发展,公众号接口将带来更多机遇,如小程序融合、AI应用等。
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
4852 7
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
5316 1
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
2764 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡

推荐镜像

更多