• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

使用python itchat包爬取微信好友头像形成矩形头像集的方法

python 搞代码 4年前 (2022-01-08) 19次浏览 已收录 0个评论

今天小编就为大家分享一篇使用python itchat包爬取微信好友头像形成矩形头像集的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

初学python,我们必须干点有意思的事!从微信下手吧!

头像集样例如下:

大家可以发朋友圈开启辨认大赛哈哈~

话不多说,直接上代码,注释我写了比较多,大家应该能看懂

 import itchat import os import PIL.Image as Image from os import listdir import math import sys print("请输入查询模式: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 = 0 for i in friends: img = itchat.get_head_img(userName=i["UserName"]) fileImage = open(user + "/" + str(num) + ".jpg-600",'wb') fileImage.write(img) fileImage.close() num += 1 pics = listdir(user)  # 得到user目录下的所有文件,即各个好友头像 numPic = len(pics) print("所有好友头<strong style="color:transparent">来源gao@daima#com搞(%代@#码@网</strong>像数:"+ 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 += 1 toImage.save(user + ".jpg-600") # itchat.send_image(user + ".jpg-600", 'filehelper')  # 自动向文件助手里面添加图片,不需要可以关闭 

运行结果:

ok!!!

以上就是使用python itchat包爬取微信好友头像形成矩形头像集的方法的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:使用python itchat包爬取微信好友头像形成矩形头像集的方法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址