点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

态度决定高度,格局决定结局。

几年前,我们给爸妈手机上下载了一款神奇的软件,他的名字叫微信。几年后,爸妈就开始吐槽我们的微信头像了。

爸妈对我们微信头像的关注程度远胜过我们的衣食住行,我在新浪微博上看到了这张统计图。

图片来源:新浪微博

所以,你就会被催着经常换头像了。

图片来源:新浪微博

但是,如果你想来个「绝地反击」、「以牙还牙」,让他们换头像,那你还是太嫩了。

图片来源:新浪微博

怎么办啊?身为技术人儿,我们当然不会被这些问题难住。今天,pk哥就教你如何用技术来个「绝地求生」。

我要让爸妈看看我所有微信好友的头像都是什么样,让他们学会适应,适应我们年轻人的头像。

所以,接下来我要做的,就是收集我微信好友所有好友的微信头像,并把这些头像全部整合在一张图上,然后我们保存或者收藏。下次,你爸妈让你再换头像时,哼哼,你就把这大图发给他们。

以上是我的所有微信好友头像的「全家福」,微信好友比较多。跟着 pk 哥学,分分钟教会你做一张属于你自己微信圈所有好友头像的「全家福」。

项目环境

语言环境Python 3.6

导入库:itchat、PIL

因为我们要获取微信头像,所以我们又要请出我们的老朋友 itchat 库了,这个库应该不陌生了,因为 pk 哥之前用它做过微信机器人:用 Python 玩微信,机器人陪你唠嗑;用它绘制过微信好友的签名的词云图:Python爬取微信,我发现了之前没发现的秘密!;用它查看好友撤回的消息:Python骚操作 | 还原已撤回的微信消息;用它给你的女神说早安或者晚安:你还单身?Python 教你脱单。

头像收集完成后,我们还有对所有头像进行合成处理,所以我们还要引入一个 PIL 图像处理库。

所以,有这么强大的库支持我们,我们一定可以「绝地反击」、「反败为胜」的,相信我,嘿嘿。

以上说的库请自行用 pip 命令安装好,导入就行。

import itchatimport PIL.Image as Imageimport mathimport os

登录微信

我们首先用 itchat 库登录我们的微信,获取所有好友信息。

itchat.auto_login(True)  # 登录微信friends = itchat.get_friends(update=True)[0:]

保存头像

itchat 库中有个自带的获取微信头像的方法:get_head_img,直接调用即可。获取头像后,我们把头像以数字递增命名并保存在我们规定的目录中即可。

上面这个保存图片的函数,我们看到有个参数,是保存图片的主目录,这个主目录如果不存在,我们就创建一个。我们单独写一个函数来定义这个目录并返回它。

以上两个简单的函数,我们就把微信好友的所有图像保存到指定的目录了。

头像合成

接下来我们需要做的是把这所有的头像制作成「全家福」。

这时,该另外一个库出场了,他就是图片处理库:PIL 库。

接下来,用这个库,新建一个一个白色背景的新图片,根据图片的大小,把所有图片按照算好的尺寸填入到这个大画布中。处理完成后,把「全家福」也保存在头像同样的目录下。

再然后,接下来就不用 pk 哥我教了吧,把「全家福」发到自己微信,保存或者收藏。下次,你妈再喊你换头像时,你就把这张全家福发给她,告诉她,别人的头像都是这样的,我就不换,哼哼。

不说了,我去给我妈发制作好的微信头像「全家福」了,下次再聊。

想要获取本文完整版代码,请在公众号后台回复「微信头像」获取。

------------------- End -------------------

往期精彩文章推荐:

  • 粉丝福利——2019精选学习资源分享

  • Python环境搭建—安利Python小白的Python和Pycharm安装详细教程

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

当你爸妈吐槽你的微信头像时,你该如何反击?相关推荐

  1. [日推荐]『微信使用小助手』爸妈不会用微信?这个小程序能搞定!

    2019独角兽企业重金招聘Python工程师标准>>> 在这个全民皆微信的时代,很多长辈们也用上了微信,但对于年轻人使用自如的微信,长辈们却需要较长时间去学习使用,而且一些不常用的功 ...

  2. 用Python把你好友微信头像合成一张大图

    此文首发于公众号 「Python知识圈」,点击这里 查看 如需转载,请在公众号联系我授权,否则,以侵权处理. 几年前,我们给爸妈手机上下载了一款神奇的软件,他的名字叫微信.几年后,爸妈就开始吐槽我们的 ...

  3. 母亲节:微信喊你给母亲充钱 华为帮你教爸妈用手机

    5月9日消息,一年一度的母亲节成为商超促销的重要日子,各个互联网大厂们也花式刷存在感. 这边,有微信喊你给母亲充钱.和"520"将转账额度提高到520元不同,微信直接帮母亲们开通了 ...

  4. 微信小程序日历插件用法-举例为(爸妈搜日历)

    一.添加插件 在小程序管理后台添加插件. 小程序管理后台地址:https://mp.weixin.qq.com/ 设置>第三方设置>插件管理 添加插件,可以直接搜索名称(爸妈搜日历)或者A ...

  5. OSChina 周五乱弹 ——爸妈是真爱,你只是意外。

    2019独角兽企业重金招聘Python工程师标准>>> Osc乱弹歌单(2017)请戳(这里) [今日歌曲] @温家成 :分享刘浩龙的单曲<思觉失调> <思觉失调& ...

  6. 学校APP太难用,码农爸妈们自己做出开源程序,官方却要报警

    明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 因学校APP太难用,码农爸妈们自己开发开源版本,结果反遭官方报警. 这年头,养孩子的难度系数也太高了吧. 而且绝不是家长们吹毛求疵,是APP ...

  7. “妈,你当年咋看上我爸的?”网友晒爸妈结婚照,笑抽了!

    全世界只有3.14 % 的人关注了 爆炸吧知识 最近看到网上有人问 什么事情让你开始怀疑人生 一网友回答 看到我爹妈的结婚照 我开始怀疑人生 我怀疑我妈当时被我爸绑架了 ▼ 妈,有啥想不开的好好说 或 ...

  8. 90后互联网打工人:为了买小两居,爸妈打零工帮我凑首付

    「核心提示」 在2020与2021交替之际,最早一批的90后,已经走完了他们的而立之年.在中文语境中,三十而立,意味着开始确立自己的人生目标与发展方向,也意味着成为社会和家庭的中坚,开始承担更多责任, ...

  9. 解锁教爸妈使用智能手机的新方法!

    有没有遭遇过被老父亲.老母亲缠着教使用智能手机,却怎么教也教不会的经历? 工作在外,手机出了问题给你打电话,他们说又说不清...... 真是难倒了英雄汉有木有? 国庆前有个朋友推荐了一个神器,说可以远 ...

  10. 中国式的父慈子孝:爸妈用子女旧手机

    中国式的父慈子孝:爸妈用子女旧手机 许多年轻人更换手机频率高,淘汰的旧手机普遍都留给父母使用.但是子女拿回家的智能手机,有的父母因为使用智能手机不习惯而遭遇尴尬. 今年27岁的市民小李,去年刚花400 ...

最新文章

  1. R计算回归模型Mallows’ Cp指标
  2. cakephp中使用大括号的形式避免用点号连接sql语句
  3. 【Python】sort 和 sorted 的用法区别
  4. C++和Rust_【Rust水群夜话】盘点Rust 官方团队2019年进展
  5. apex图表使用饼图居中_echarts饼图标题居中以及调整主副标题的间距、字号
  6. 通过视频着色进行自监督跟踪
  7. xml 和android脚本之家,AndroidManifest.xml配置文件解析_Android_脚本之家
  8. 对Xml文档进行操作(修改,删除)
  9. WinForms多线程编程之摇奖程序
  10. 封头名义厚度如何圆整_松原封头价格
  11. 职场英语口语100句 (转载)
  12. oracle 存储过程 存储 blob,穿越oracle存储过程的Blob参数上传文件
  13. android studio如何设置输出值的小数点_C语言基础知识:printf的输出格式,C/C++语言编程讲解...
  14. 云之讯 亿美 短信的三方接口
  15. 【5分钟力扣】118.杨辉三角 python
  16. DOSBOX 0.74模拟器安装Windows 95
  17. uniapp基础介绍
  18. Elasticsearch 滞后8个小时等时区问题,一网打尽!
  19. 简单 python 爬虫(一)
  20. oracle为表空间增加数据文件,创建Oracle表空间,增加数据文件的步骤

热门文章

  1. 推荐几款精美耐看的xshell配色方案
  2. 什么是转义字符?转义字符有哪些?为什么使用转义字符?
  3. springcloud alibaba 整合 seata 完整 安装和配置
  4. C# XmlDocument.Save文件操作System.IO.IOException:The process cannot access the file because it is being
  5. JavaScript封装拖动滑块验证
  6. 工程伦理思考题汇总——张永强主编
  7. 计算机局域网和广域网的特点是什么,局域网和广域网的区别
  8. java 前后端分离教程,Java web前后端分离
  9. gitlab: [remote rejected] pre-receive hook declined
  10. 目前最火的Java主流技术栈及开发工具