import itchat
import os
from math import sqrt
from PIL import Image
import shutilpwd = os.getcwd()                                                         #获取相对路径
print(pwd)
filename = pwd +'\\'+'weixin'                                             #存放图片路径
print(filename)
if not os.path.exists(filename):                                          #判断是否有文件夹os.makedirs(filename)print('文件夹已新建')
else:print('文件夹已存在')itchat.auto_login()                                                       #微信登入
friends = itchat.get_friends(update=True)[0:]
itchat.send('欢迎光临,正在为您生成图片', 'filehelper')
for item in friends:                                                      #开始下载图片print ('正在下载 '+item['NickName']+' 的图片')img = itchat.get_head_img(userName=item["UserName"])path = filename+'\\'+item['NickName']+'.jpg'try:with open(path,'wb') as f:f.write(img)except Exception as e:print(repr(e))
user = friends[0]['UserName']
pathList = []
for item in os.listdir(filename):                                           imgPath = os.path.join(filename,item)                                   #读取图片pathList.append(imgPath)
total = len(pathList)                                                       #total是好友头像图片总数
line = int(sqrt(total))                                                     #line是拼接图片的行数(即每一行包含的图片数量)
NewImage = Image.new('RGB', (128*line,128*line))
x = y = 0
for item in pathList:try:img = Image.open(item)img = img.resize((128,128),Image.ANTIALIAS)NewImage.paste(img, (x * 128 , y * 128))x += 1except IOError:print("第%d行,%d列文件读取失败!IOError:%s" % (y,x,item))x -= 1if x == line:x = 0y += 1if (x+line*y) == line*line:break
NewImage.save(filename+'\\'+user+'.jpg')
itchat.send_image(filename+'\\'+user+'.jpg', 'filehelper')                    #发送图片到文件助手
itchat.send('图片生成成功', 'filehelper')
shutil.rmtree(filename)                                                       #删除文件夹
itchat.logout()

网上有很多类似的代码,吵吵改改,自己写的勿喷,代码练习中
有个问题itchat的登入二维码会在程序关闭后还会弹出来有什么解决办法吗

python代码练习,微信登入并生成头像大图相关推荐

  1. 微信小程序之微信登入

    以下代码基于uni-app编写 如果没有appid,那么uni-login是受限制的 https://open.weixin.qq.com/ 认证商户() 微信登入 不同的应用对于微信登入会做不同的处 ...

  2. 4.微信登入小程序与后端实现

    微信登入小程序与后端实现 **需求:**实现小程序端实现登入以后,后端实现登入状态 小程序端 app.js App({onLaunch: function () {// 展示本地存储能力001bHJ2 ...

  3. [Android]-SDK QQ微信登入

    在Unity中接入大量SDK,对一个零Android开发基础的人来说还是比较蛋疼的.在网上搜了一大堆资料,总算折腾出一个能用的QQ&微信登入SDK. 在QQ互联和微信开放平台注册,并申请相关权 ...

  4. 帝国cms插件支持7.0/7.2 7.5/UTF-8 微信登入插件 一键登入

    简介: 这款微信登入插件,快快拿去用吧,非常方便,傻瓜式设置. 安装非常简单!新手也能懂! 网盘下载地址: http://kekewangLuo.cc/okQMSxm8a8m0 图片: 安装使用方法: ...

  5. Python代码实现猜数字游戏随机生成数字进行比对

    Python代码实现猜数字游戏随机生成数字进行比对 import random secret = random.randint(1,10) print("---------------猜数字 ...

  6. 158行Python代码复现:DeepMind提图像生成的递归神经网络DRAW

    授权自AI科技大本营(ID:rgznai100) 本文约5200字,建议阅读10+分钟. 本文作者基于代码实现系统的思路,详细阐述了 DRAW 的概念.架构和优势等. [ 导读 ]最近,谷歌 Deep ...

  7. c语言微信挑一挑编程,100行python代码实现微信跳一跳辅助程序

    写在前面 分享一下今天下午用python写的"跳一跳"小游戏的辅助程序.之前是准备用树莓派操控一个"机械手指"来代替人的触摸操作,但该方案还在酝酿中,实现了再分 ...

  8. python 语音转文字软件_十行Python代码将微信语音转文字

    QQ和微信这两款都是非常受人喜欢的聊天交友软件!可能大家平时没有留意到,也或者是大家可能很少用微信,或者很少用QQ吧!所以可能没有留意这些小细节!就是QQ上面发的语音消息是可以直接文字识别的,但是微信 ...

  9. 100行python代码做一个程序_100行python代码实现微信跳一跳辅助程序

    写在前面 分享一下今天下午用python写的"跳一跳"小游戏的辅助程序.之前是准备用树莓派操控一个"机械手指"来代替人的触摸操作,但该方案还在酝酿中,实现了再分 ...

最新文章

  1. java包装类和基本类型谁先谁后_你知道Java中基本类型和包装类的区别吗
  2. Linux学习笔记6——文本处理相关命令
  3. python声音分类_Python音频信号分类MFCC特征神经网络
  4. 数据的结构和运算(求和,最大和最小)
  5. JSP(五):属性范围
  6. (转)FPGA的速度等级(speed grade)
  7. 工作285:判断绑定逻辑
  8. Android官方开发文档Training系列课程中文版:创建自定义View之View的优化
  9. linux c程序加args,C/C++可变参数,“## __VA_ARGS__”宏的介绍和使用
  10. 产品研发过程管理专题——软件测试是提高软件产品质量的必要条件
  11. LESS是一个CSS预处理器,跨浏览器友好,提供诸如变量,函数, mixins 和操作等功能,可以构建动态CSS...
  12. 用Lightroom Classic CC2019 mac合并照片以创建全景和HDR全景
  13. (转载)突然就看懂了《大话西游》
  14. 深入C++中构造函数、拷贝构造函数、赋值操作符、析构函数的调用过程总结
  15. 自动生成构造方法、getter、setter
  16. 计算机语言的英文发音,求:英语句子发音软件!!!
  17. 苹果电脑制作Windows U盘系统
  18. 基于SSH框架的人力资源管理系统设计与实现
  19. TerraSolid工具试用系列----TerraSolid系列点云处理软件安装备注
  20. 阿里云商标注册查询入口(支持图形检索/45分类注册风险)

热门文章

  1. php 时间微秒,PHP中使用微秒计算脚本执行时间例子
  2. 火车头分页post php,轻松搞定PHPCMS V9火车头采集自动分页
  3. 程序员的机器学习入门笔记(一):基本概念介绍
  4. Windows操作系统类毕业论文文献有哪些?
  5. java 并行流水线_在新流水线使用 Java 应用演示
  6. HDFS成员的工作机制
  7. 阿里巴巴微服务架构演进
  8. Java 第9天 面向对象(中) 理解有参构造器和无参构造器的作用
  9. UE4 循环滚动Led效果材质
  10. 文科专业计算机等级吗,文科生如何过计算机等级考试