前几天已经把效果图发了出来,但是没有放出步骤以及代码,今天整理了一下发给大家,首先前期准备如下:
一台电脑
一部ROOT过的安卓手机
1.微信聊天记录备份
IOS系统
登录微信电脑版,使用左下角的“设置—备份与恢复—备份聊天记录至电脑”
在手机微信上选择想要分析的聊天记录(建议选择仅备份文字消息,不然会很慢)
安卓系统
本机已ROOT则并不需要这一步,未ROOT的安卓机和IOS系统操作相同
2.微信聊天记录导出TXT
在已ROOT的安卓机上下载软件“微信聊天记录导出助手”并赋予ROOT权限,登录微信
登录微信电脑版,使用左下角的“设置—备份与恢复—恢复聊天记录至手机”
恢复完成后打开“微信聊天记录导出助手”按软件提示步骤将聊天记录导出为EXCEL
将导出文件发回电脑转为TXT
软件华为市场网址:/uowap/index.html#/detailApp/C7517453
3.做出词云背景图片
使用word或者画图直接画一个大红心转为图片或者截图保存即可,如下图这种即可
4.做出词云并保存
不废话,代码如下:
# encoding=utf-8import jiebaimport osimport sysimport matplotlib.pyplot as pltfrom wordcloud import WordCloud,ImageColorGeneratorreload(sys)sys.setdefaultencoding('utf-8') #没这一步会乱码import jieba.posseg as psgos.chdir('E:\python-code')text = open('us.txt').read() #提取数据源文本words= [x.word for x in psg.cut(text) if len(x.word) >= 2] # 取长度大于等于两位的词from collections import Counterc = Counter(words).most_common(500)text = {}for x in c :text[x[0]] = int(x[1])bj_pic=plt.imread('105.bmp')wc = WordCloud( background_color = 'white', # 设置背景颜色max_words = 300,mode ="RGBA",mask=bj_pic,scale=6.5,relative_scaling=0.45, # 设置频数与字体大小的相关性font_path = 'C:/Windows/Fonts/simhei.ttf',# 设置字体格式,如不设置显示不了中文max_font_size = 45# 设置字体最大值)img_color = ImageColorGenerator(bj_pic)wc.fit_words(text).recolor(color_func=img_color)plt.imshow(wc)plt.axis("off")plt.show()pass
最后再放一下两位志愿者的虐狗实例照片
喜欢我可以扫描下面这个萌萌的二维码关注我哦~