十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章将为大家详细讲解有关Python怎么制作微信好友背景墙,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
成都创新互联公司是一家集成都网站设计、网站制作、外贸营销网站建设、网站页面设计、网站优化SEO优化为一体的专业网站制作公司,已为成都等多地近百家企业提供网站建设服务。追求良好的浏览体验,以探求精品塑造与理念升华,设计最适合用户的网站页面。 合作只是第一步,服务才是根本,我们始终坚持讲诚信,负责任的原则,为您进行细心、贴心、认真的服务,与众多客户在蓬勃发展的市场环境中,互促共生。python常用的库:1.requesuts;2.scrapy;3.pillow;4.twisted;5.numpy;6.matplotlib;7.pygama;8.ipyhton等。
前段时间,微信朋友圈开始出现了一种晒照片新形式,微信好友墙,即在一张大图片中展示出自己的所有微信好友的头像。
效果如下图,出于隐私考虑,这里作了模糊处理。
是不是很炫,而且这还是独一无二的,毕竟每个人的微信好友是不一样的。本文就教大家用Python来实现这种效果。
操作系统:Windows
Python版本:3.7.3
我们需要首先需要获取好友的头像信息,接下来处理图像并完成图像的拼接。
在这里,我们登录微信获取好友信息,使用的是 wxpy 模块;处理并生成最终的图像借助 PIL 模块。因为都是第三方模块,如环境中没有可以使用 pip 进行安装。另外涉及路径的处理等,我们需要导入 os 模块和 sys 模块。
from wxpy import * import PIL.Image as Image import os import sys
我们要获取微信好友的头像,首先需要登录微信
# 初始化机器人,扫码登陆微信,适用于Windows系统 bot = Bot() # # Linux系统,执行登陆请调用下面的这句 # bot = Bot(console_qr=2, cache_path="botoo.pkl"
在获取好友头像信息之前,我们得先在本地创建一个目录,用于后续存储好友头像的文件。
# 获取当前路径信息 curr_dir = get_dir(sys.argv[0]) # 如果FriendImgs目录不存在就创建一个 if not os.path.exists(curr_dir + "FriendImgs/"): os.mkdir(curr_dir + "FriendImgs/")
接下来就是获取友头像信息,并将其存储在本地创建的目录中。
my_friends = bot.friends(update=True) # 获取好友头像信息并存储在FriendImgs目录中 n = 0 for friend in my_friends: friend.get_avatar(curr_dir + "FriendImgs/" + str(n) + ".jpg") n = n + 1
这时你就可以在本地FriendImgs文件夹中,看到保存下来的微信好友头像的图片。
制作微信好友墙,就像以前的大字报,把我们下载的好友头像逐一贴上去即可。
首先设定好微信好友墙的尺寸,使用 Image.new() 方法。
image = Image.new("RGB", (650, 650))
接下来,我们需要逐个打开微信好友的图片,使用 Image.open() 方法。
img = Image.open(curr_dir + "FriendImgs/" + file_names)
将微信头像图片,重置为50*50像素尺寸的小图,使用 img.resize() 方法。
img = img.resize((50, 50), Image.ANTIALIAS)
然后将图片黏贴到我们的照片墙中,使用 image.paste() 方法。
image.paste(img, (x * 50, y * 50))
最后将制作完成的照片墙保存下来,使用 image.save() 方法。
img = image.save(curr_dir + "WeChat_Friends.jpg")
现在我们将本小节中代码整合到一起,如下所示:
# 准备生成微信好友头像墙的尺寸 image = Image.new("RGB", (650, 650)) # 定义初始图片的位置 x = 0 y = 0 # 获取下载的头像文件 curr_dir = get_dir(sys.argv[0]) ls = os.listdir(curr_dir + 'FriendImgs') # 遍历文件夹的图片 for file_names in ls: try: # 依次打开图片 img = Image.open(curr_dir + "FriendImgs/" + file_names) except IOError: continue else: # 重新设置图片的大小 img = img.resize((50, 50), Image.ANTIALIAS) # 将图片粘贴到最终的照片墙上 image.paste(img, (x * 50, y * 50)) # 设置每一行排13个图像 x += 1 if x == 13: x = 0 y += 1 # 保存图片为WeChat_Friends.jpg img = image.save(curr_dir + "WeChat_Friends.jpg
代码执行后,最终生成的效果图如下:
关于“Python怎么制作微信好友背景墙”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。