时间:2021-05-22
初学python,我们必须干点有意思的事!从微信下手吧!
头像集样例如下:
大家可以发朋友圈开启辨认大赛哈哈~
话不多说,直接上代码,注释我写了比较多,大家应该能看懂
import itchatimport osimport PIL.Image as Imagefrom os import listdirimport mathimport sysprint("请输入查询模式:0-显示所有好友头像,但最终矩形头像集最后一行可能残缺;1-头像集为完整矩形,但好友可能不全,即在0模式下舍弃最后一行")mode = input()if mode not in ("0","1"): print("请按照正确格式输入!") sys.exit(0)# itchat.auto_login(enableCmdQR=True) # 这种登录时控制台生成登录二维码itchat.login() # 这种登录是生成二维码图片在本地目录friends = itchat.get_friends(update=True)[0:] # 核心:得到frieds列表集,内含很多信息user = friends[0]["UserName"]w = open(user+"_friends",'a',encoding='utf-8',errors='ignore') # 将friends列表存下来,看看内容for i in friends: w.write(str(i))print("授权微信用户为:"+user)os.mkdir(user) # 创建文件夹用于装载所有好友头像num = 0for i in friends: img = itchat.get_head_img(userName=i["UserName"]) fileImage = open(user + "/" + str(num) + ".jpg",'wb') fileImage.write(img) fileImage.close() num += 1pics = listdir(user) # 得到user目录下的所有文件,即各个好友头像numPic = len(pics)print("所有好友头像数:"+ str(numPic))eachsize = int(math.sqrt(float(640 * 640) / numPic)) # 先圈定每个正方形小头像的边长,如果嫌小可以加大print("小正方形头像边长:"+ str(eachsize))numrow = int(640 / eachsize)print("一行小头像数:"+ str(numrow))if mode == "0": numcol = int(math.ceil(numPic * 1.0 / numrow)) # 向上取整else: numcol = int(numPic / numrow) # 向下取整 print("舍弃好友数:"+ str(numPic - numrow * numcol))toImage = Image.new('RGB', (eachsize*numrow, eachsize*numcol)) # 先生成头像集模板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 == numrow: x = 0 y += 1toImage.save(user + ".jpg")# itchat.send_image(user + ".jpg", 'filehelper') # 自动向文件助手里面添加图片,不需要可以关闭运行结果:
ok!!!
以上这篇使用python itchat包爬取微信好友头像形成矩形头像集的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文我们来看一下如何使用Python将QQ好友头像拼成“五一快乐”四个字。我们可以将整个实现过程分为两步:爬取QQ好友头像、利用好友头像生成文字。爬取头像爬取Q
本文实例讲述了Python爬取个人微信朋友信息操作。分享给大家供大家参考,具体如下:利用Python的itchat包爬取个人微信号的朋友信息,并将信息保存在本地
偶然在网上发现itchat这个框架,itchat是一个开源的微信个人号接口,它使python调用微信变得非常简单。看到网上有人发自己微信好友的头像拼接图,自己也
基于itchat库来获取微信好友头像并执行拼接操作,对微信上文字化好友列表数据进行可视化展示。获取好友头像defsave_avatar(folder):"""保
总有思路清奇的朋友存在,想实现查看微信共同好友:由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友