前言

用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下:

不会写代码?没关系!只要你会使用电脑就 ok!
因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就完事了
下面分别详细的给大家讲解是如何实现的

程序使用教程

1.公众号后台回复 “wx”即可获取 .exe 程序

2.在windows上点击运行,会弹出一个微信登陆的二维码,用手机微信扫描,确认登录。

3.登陆成功后,会显示保存的头像,最后会在程序运行的目录生成一张 all.png 的图片

当看到 “所有的微信头像已合成,请查阅all.png!” 的时候,你要的头像墙就在 [wxImages] 文件夹里面

4. 你可以把这张图发到朋友圈,随便配个文案,随后就等着大波点赞吧。

代码教程

代码其实很简单,主要是做起来觉得很有意义,如果你会python基础,再加上下面的讲解,你也可以的!
####1. 首先新建一个虚拟环境。为什么要虚拟环境?怎么建虚拟环境? 我之前的文章有写,去历史消息翻翻就能找到

虚拟环境的名字随意取,我取的是 [“wx”]

2. 在pycharm 中导入刚才建好的虚拟环境

3.需要安装的库:

wxpy
用来操作微信的,除了获取头像,还能给好友发消息,具体可查看官方文档

pillow <=4.2.1
处理头像

pyinstaller
将代码打包成 .exe 程序的

4. 接下来就是写代码了

微信登陆部分代码

@staticmethoddef get_image():path = os.path.abspath(".")  #当前目录bot = Bot()  # 机器人对象friends = bot.friends(update=True)dirs = path + "\\wxImages"  #  微信头像保存的路径if not os.path.exists(dirs):os.mkdir("wxImages")index = 0for friend in friends:print(f"正在保存{friend.nick_name}的微信头像")friend.get_avatar(dirs + "\\" + f"{str(index)}.jpg")index += 1return dirs  # 合成头像的时候需要用到

合成图像代码

 @staticmethoddef composite_image(dirs):images_list = os.listdir(dirs)images_list.sort(key=lambda x: int(x[:-4]))  # 根据头像名称排序length = len(images_list)  # 头像总数image_size = 2560  # # 每个头像大小each_size = math.ceil(image_size / math.floor(math.sqrt(length)))lines = math.ceil(math.sqrt(length))  # 列数rows = math.ceil(math.sqrt(length))  # 行数image = Image.new('RGB', (each_size * lines, each_size * rows))row = 0line = 0os.chdir(dirs)  # 切换工作目录for file in images_list:  # 遍历每个头像try:with Image.open(file) as img:img = img.resize((each_size, each_size))image.paste(img, (line * each_size, row * each_size))line += 1if line == lines: # 一行填满后开始填下一行line = 0row += 1except IOError:print(f"头像{file}异常,请查看")continueimg = image.save(os.getcwd() + "/all.png")  # 将合成的头像保存if not img:print('所有的微信头像已合成,请查阅all.png!')

核心代码完成后,将两部分合一起再导入需要的包,就完事了

源码在此

# coding: utf-8
from wxpy import Bot, Chat
import math
import os
from PIL import Imageclass WxFriendImage(Chat):@staticmethoddef get_image():path = os.path.abspath(".")bot = Bot()  # 机器人对象friends = bot.friends(update=True)dirs = path + "\\wxImages"if not os.path.exists(dirs):os.mkdir("wxImages")index = 0for friend in friends:print(f"正在保存{friend.nick_name}的微信头像")friend.get_avatar(dirs + "\\" + f"{str(index)}.jpg")index += 1return dirs@staticmethoddef composite_image(dirs):images_list = os.listdir(dirs)images_list.sort(key=lambda x: int(x[:-4]))  # 根据头像名称排序length = len(images_list)  # 头像总数image_size = 2560# 每个头像大小each_size = math.ceil(image_size / math.floor(math.sqrt(length)))lines = math.ceil(math.sqrt(length))  # 列数rows = math.ceil(math.sqrt(length))  # 行数image = Image.new('RGB', (each_size * lines, each_size * rows))row = 0line = 0os.chdir(dirs)for file in images_list:try:with Image.open(file) as img:img = img.resize((each_size, each_size))image.paste(img, (line * each_size, row * each_size))line += 1if line == lines:line = 0row += 1except IOError:print(f"头像{file}异常,请查看")continueimg = image.save(os.getcwd() + "/all.png")if not img:print('所有的微信头像已合成,请查阅all.png!')
def main():dirs = WxFriendImage.get_image()WxFriendImage.composite_image(dirs)
if __name__ == '__main__':main()

可以将代码复制到自己的编译器里面运行,效果是一样的。

至于打包成 .exe的程序就更简单了
在命令行中运行下面的命令即可

pyinstaller -F F:\wx\wx.py

运行成功后,会在倒数第二行显示生成程序的路径

好了,以上就是用python合成微信好友头像的全部指南了
觉得对你有用,就帮忙点个赞呗…


下面是本人的公众号,里面有很多志同道合的朋友,欢迎关注学习加群

一键生成合成微信好友墙相关推荐

  1. 一键制作所有微信好友头像墙照

    你有密集恐惧症吗? 想知道你在我微信列表里面吗? 看图吧!! 刚把上面的图发了一下朋友圈就有一堆小伙伴问我怎么制作的,现在把方法告诉大家,这是一个Python编写的小程序! 在文章的末尾我会给大家提供 ...

  2. 微信神器:一键批量下载微信好友头像并拼成一张图

    苏生不惑第279 篇原创文章,将本公众号设为星标,第一时间看最新文章. 之前分享过一键生成你的微信社交数据报告,不过很多人的微信不能登录网页版微信.会提示这个:为了你的帐号安全,此微信号不能登录网页微 ...

  3. 10.一键生成个人微信朋友圈数据电子书

    简介 微信朋友圈保留着你的数据,它留住了美好的回忆,记录了我们成长的点点滴滴.发朋友圈从某种意义上来讲是在记录生活,感受生活,并从中看到了每个人每一步的成长. 这么一份珍贵的记忆,何不将它保存下来呢? ...

  4. 公众号 自动生成海报 python_用python一键生成一张全部微信好友的头像墙

    前言 用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就 ...

  5. 高手用Python一键生成微信好友头像墙

    用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就完事了 ...

  6. 用Python一键生成微信好友头像墙

    前言 用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就 ...

  7. 用python一键生成你的微信好友头像墙

    导语 你千万别跟任何人谈任何事情.你只要一谈起,就会想念起每一个人来,我只知道我很想念我所谈到的每一个人. --J·D·塞林格<麦田里的守望者> 前言 用 python 代码写了一个一键合 ...

  8. python朋友圈头像_用python一键生成头像墙,将你微信好友头像全部收集起来

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:Python编程与实战 ( 想要学习Python?Py ...

  9. 无须代码,一键生成微信好友图片墙!

    点击上方"杰哥的IT之旅",选择"置顶公众号" 干货.福利第一时间送达! 效果图 前段时间我在朋友圈晒出了一张关于微信好友墙的照片,有不少读者评论到具体是通过方 ...

  10. python代码手机壁纸_Python制作微信好友背景墙教程(附完整代码)

    引言 前段时间,微信朋友圈开始出现了一种晒照片新形式,微信好友墙,即在一张大图片中展示出自己的所有微信好友的头像. 效果如下图,出于隐私考虑,这里作了模糊处理. 是不是很炫,而且这还是独一无二的,毕竟 ...

最新文章

  1. 双11大返厂,用Python打造最强告白代码,单身节脱单靠自己
  2. 三值网络--Trained Ternary Quantization
  3. 访问一个HTTPS的网站的大致流程
  4. RNN LSTM 循环神经网络 (分类例子)
  5. android 首页6个碎片,Android 单帧碎片
  6. 蓝桥杯(java)阶乘计算,输入一个正整数n,输出n!的值。(高精度计算,用到数组)
  7. 拼多多市值超2100亿美元 黄峥成中国第二大富豪
  8. 在Android上可视化TensorFlow Lite AI结果
  9. 如何更好的组织你的Laravel模型 1
  10. shiro的详细讲解
  11. 麻将游戏软件————附带核心算法
  12. python井字棋_用python井字棋
  13. JavaScript库和框架
  14. mybatis实战之拦截器
  15. 字符串算法 金策_OI-Public-Library/国家集训队论文1999-2017 at master · BlackWaters/OI-Public-Library · GitHub...
  16. 电子元器件篇—共模电感
  17. PDF怎么修改,怎么给PDF添加页码
  18. java 反射机制中的 Filed (属性反射机制)
  19. Batch Normalization 批归一化是什么? 有什么用?
  20. 新手淘宝卖家不知道如何运营店铺,精细化运营让你走的更远

热门文章

  1. OpenCV学习之多通道图像的混合
  2. ASP.NET身份验证和授权,使用cookie和Claims认证
  3. Virtualbox虚拟机Ubuntu联网
  4. C# 使用OpenXML创建PPT表格
  5. 微信怎么不支持华为鸿蒙,微信迟迟不加入鸿蒙,华为为何不着急呢?
  6. 数据结构与算法之排序篇(下)
  7. 俞敏洪:度过有意义的生命(转)
  8. 人类如何学习和表征网络?
  9. 【工作日报】2019年7月 前端开发工作日报汇总
  10. 复化科特斯公式matlab_牛顿