Python 微信之获取好友昵称并制作wordcloud的实例


Posted in Python onFebruary 21, 2019

最近看到网上有人用Python获取微信的一些信息,感觉挺有意思,对于我一个Python刚入门的人来说,正需要一些代码片段来激起我的兴趣,所以自己也写了一些,废话不多说,直接上代码!!!

coding:utf-8
微信好友昵称WordCloud
import itchat
import re
import os
import matplotlib.pyplot as plt
from wordcloud import WordCloud, ImageColorGenerator
import numpy as np
import PIL.Image as Image
import jieba
import time
#以上是我用到的一些库,这些根据个人不同需要安装某些库

#运行到此处会自动生成一个二维码,打开手机微信,扫一扫即可登录
itchat.login() 
friends = itchat.get_friends(update=True)[0:]
tList = []


for i in friends:
  #用正则表达式过滤掉 span ,class,emoji。NickName表示微信好友的昵称;
  signature = i["NickName"].strip().replace("span","").replace("class","").replace("emoji","")
  rep = re.compile("1f\d.+")
  signature = rep.sub("",signature)
  print signature
  tList.append(signature)


#拼接字符串
text = "".join(tList)

#jieba分词
wordlist_jieba = jieba.cut(text,cut_all=True)
wl_space_split = " ".join(wordlist_jieba)

#wordcloud
d = os.path.dirname(__file__)
alice_coloring = np.array(Image.open(os.path.join(d,"hot.png")))  #设置一个背景图片,文章中会附上
my_wordcloud = WordCloud(background_color="white",max_words=2000,mask=alice_coloring,max_font_size=37, random_state=42,
font_path="./handan.ttf").generate(wl_space_split) 
#此处使用的字体一定是支持中文的字体,当然,如果你确定你好友的昵称都是英文,那么请忽略,字体的路径可以是相对路径,也可以是你的系统字体

image_colors = ImageColorGenerator(alice_coloring)
plt.imshow(my_wordcloud.recolor(color_func=image_colors))
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()
time.sleep(3)
plt.close() #图片关闭后将图片发送至手机,保存图片,并发送至手机
my_wordcloud.to_file(os.path.join(d, "wechat_cloud.png"))
itchat.send_image("wechat_cloud.png", 'filehelper')

至此,打开你的手机,进入到文件传输助手,你会收到一张图片,这就是使用微信好友昵称制作的词云,下面附上一张我本人的

Python 微信之获取好友昵称并制作wordcloud的实例

Python 微信之获取好友昵称并制作wordcloud的实例

以上这篇Python 微信之获取好友昵称并制作wordcloud的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 Python
Python判断Abundant Number的方法
Jun 15 Python
python实现的简单RPG游戏流程实例
Jun 28 Python
Python在Windows和在Linux下调用动态链接库的教程
Aug 18 Python
python正则实现计算器功能
Dec 14 Python
Python动态导入模块的方法实例分析
Jun 28 Python
Python字符串的全排列算法实例详解
Jan 07 Python
Python Websocket服务端通信的使用示例
Feb 25 Python
Python如何存储数据到json文件
Mar 09 Python
使用Python爬取小姐姐图片(beautifulsoup法)
Feb 11 Python
教你如何使用Python实现二叉树结构及三种遍历
Jun 18 Python
利用Python实现翻译HTML中的文本字符串
Jun 21 Python
Python基于opencv调用摄像头获取个人图片的实现方法
Feb 21 #Python
python-itchat 获取微信群用户信息的实例
Feb 21 #Python
python 获取微信好友列表的方法(微信web)
Feb 21 #Python
Python基于mysql实现学生管理系统
Feb 21 #Python
python+mysql实现教务管理系统
Feb 20 #Python
python Tkinter版学生管理系统
Feb 20 #Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
Feb 20 #Python
You might like
php获取数组元素中头一个数组元素值的实现方法
2014/12/20 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
2016/01/05 PHP
php使用正则验证中文
2016/04/06 PHP
thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
2016/05/27 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
关于JavaScript的一些看法
2009/05/27 Javascript
js 输出内容到新窗口具体实现代码
2013/05/31 Javascript
js在输入框屏蔽按键,只能键入数字的示例代码
2014/01/03 Javascript
javascript匿名函数应用示例介绍
2014/03/07 Javascript
javascript常用函数(2)
2015/11/05 Javascript
jQuery操作json常用方法示例
2017/01/04 Javascript
react native仿微信PopupWindow效果的实例代码
2017/08/07 Javascript
Three.js如何实现雾化效果示例代码
2017/09/27 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
ios设备中angularjs无法改变页面title的解决方法
2018/09/13 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
2019/03/06 Javascript
vue项目创建并引入饿了么elementUI组件的步骤
2019/04/11 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
python获取一组汉字拼音首字母的方法
2015/07/01 Python
Python实现字典的遍历与排序功能示例
2017/12/23 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
2019/01/22 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
Python GUI编程完整示例
2019/04/04 Python
python系列 文件操作的代码
2019/10/06 Python
python Django框架实现web端分页呈现数据
2019/10/31 Python
CSS3制作圆角图片和椭圆形图片
2016/07/08 HTML / CSS
英国轻奢珠宝品牌:Astley Clarke
2016/12/18 全球购物
巴西儿童时尚购物网站:Dinda
2019/08/14 全球购物
施工班组长岗位职责
2014/01/05 职场文书
大学军训感言600字
2014/02/25 职场文书
教师年终个人总结
2015/02/11 职场文书
表扬信范文
2019/04/22 职场文书
详解PHP用mb_string处理windows中文字符
2021/05/26 PHP
Log4j.properties配置及其使用
2021/08/02 Java/Android
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL