作者:September 。致谢:微信公众号、data挖掘机。
说明:本文是笔者看到一篇文章《基于Python实现的微信好友数据分析》,也正好想简单学习Python,据说Python很简洁,也的确如此。
声明:本文中的代码是从公众号中弄过来的,但是没有格式,自己通过简单学习,掌握了一点点知识,也将代码改好了,再后来看到data挖掘机的博客,发现了他写的一些优化,感觉也是很棒,Code详见Github。
前言
动笔写这篇论文是因为初次尝试用Python实现一些东西,并且从Pip install
命令到代码真正实现也出现了很多小问题,然后一步步解决,这算得上是学习上的小乐趣吧。
OK,有任何问题,欢迎任何人随时不吝指正 & 赐教,感谢。
模块安装
- itchat:微信网页版接口封装Python版本,在本文中用以获取微信好友信息。
- jieba:结巴分词的 Python 版本,在本文中用以对文本信息进行分词处理。
- matplotlib: Python 中图表绘制模块,在本文中用以绘制柱形图和饼图
- snownlp:一个 Python 中的中文分词模块,在本文中用以对文本信息进行情感判断。
- PIL: Python 中的图像处理模块,在本文中用以对图片进行处理。
- numpy: Python中 的数值计算模块,在本文中配合 wordcloud 模块使用。
- wordcloud: Python 中的词云模块,在本文中用以绘制词云图片。
TencentYoutuyun:腾讯优图提供的 Python 版本 SDK ,在本文中用以识别人脸及提取图片标签信息。
本人用的python3.6,以上模块除了
TencentYoutuyun
和wordcloud
,均可以通过pip install 安装,依据Youtu,
访问https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud下载对应版本的安装包,将下载的安装包保存在工作目录下,直接使用pip install 文件名。
数据分析
itchat 获得好友信息
import itchat
itchat.auto_login(hotReload=True)
friends = itchat.get_friends(update=True)
print(friends)
好友性别
好友头像
需要下载通讯录好友图像,这里不做演示,直接看看代码
好友签名
- 签名
- 情感
好友位置
将地址位置保存在文本中,没有实现完整的地图分布,后期有时间再补充。