利用python将微信聊天记录生成词云
前言
2019年过去了,想回顾一下在过去的一年里和好朋友都聊了些什么,于是打算把微信聊天记录生成一个词云。
1 导出微信聊天记录
1.1 用iTunes备份
点击立即备份将手机上的文件备份到电脑上
1.2 楼月免费iTunes备份管理器
在电脑上安装并运行楼月免费iTunes备份管理器,将备份数据中保存了微信聊天记录的Documents文件夹导出到电脑上。
1.3 楼月微信聊天记录导出恢复助手
在电脑上安装楼月微信聊天记录导出恢复助手,选择要导出的好友,复制全部的聊天记录,在电脑上新建一个TXT文本文件,粘贴进去。
楼月软件官方介绍
安装包在这里哦
2 准备工作
2.1 第三方库的安装
wordcloud包
将下载的文件放到一个文件夹下,安装命令是 pip install wordcloud‑1.4.1‑cp36‑cp36m‑win_amd64.whl
注意首先要进入到放置这个文件的目录下,比如输入 D:
如果需要生成中文的词云,还需要导入jieba分词的包。
jieba官方网站
2.2 素材
正式输入代码之前,我们还需要下载一份中文字体文件以及遮罩层图片。
中文字体文件
为了方便,我们将字体文件、遮罩层图片、文本文件都移动到我们的工作目录下。
3 编写代码
由于我们想要生成带有轮廓的词云,因此需要导入numpy包,它是python的一种开源的数值计算扩展,可用来存储和处理大型矩阵,处理的时候将图片表示为一个大型矩阵,在有颜色的地方进行填词。
import pandas as pd
import numpy as np
from os import path
接下来读取TXT文件,注意在之前保存的时候编码要选择UTF-8,否则可能会报错哦
filename = "H:/aaa/ping.txt"
with open(filename,'r',encoding='utf-8') as f:mytext = f.read()
结巴分词,生成字符串,有多种分词模式
去停用词时,可以手动去除,也可以建立停用词表
import jieba
import jieba.analyse
from wordcloud import WordCloud, ImageColorGenerator, STOPWORDS
mytext = str(mytext)
mytext = "".join(jieba.lcut(mytext))
stop_words = set(STOPWORDS)
stop_words.add("表情")
PIL(Python Image Library)是python平台图像处理标准库
接下来导入图片和字体,并设置参数。scale的数值越大,产生的图片分辨率越高,字迹越清晰。
d = path.dirname("H://aaa//")
from PIL import Image
alice_mask = np.array(Image.open(path.join(d,"1.jpg")))
font=r'H:\\aaa\\simsun.ttf'
wordcloud = WordCloud(scale=16,font_path=font,background_color='White',max_words=150,width=1000,height=600,max_font_size=200,stopwords=stop_words,mask=alice_mask,random_state=1,).generate(mytext)
最后运行这串代码,词云就生成了,保存为png格式会增加清晰度。
%pylab inline
import matplotlib.pyplot as plt
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis("off")
wordcloud.to_file(path.join(d,"ping.png"))
4 结果展示
可以看到大部分表情包词语都出现了两次,因此最开始的数据清洗很重要(๑´͈ ᵕ `͈๑)◞♡呐今天就先到这里吧,大家新年快乐❤
利用python将微信聊天记录生成词云相关推荐
- 导出微信聊天记录,使用python进行分词,生成词云
导出微信聊天记录,使用python进行分词,生成词云 导出微信聊天记录,使用python进行分词,生成词云 备份数据 浏览.导出数据 查看数据 操作数据库,分析生成词云 下载全部文件 导出微信聊天记录 ...
- 微信聊天记录的词云制作
微信聊天记录的词云制作 需求 导出微信聊天记录 提取文字聊天记录 生成词云 需求 想把跟朋友的微信聊天记录做个词云 导出微信聊天记录 我的手机是iphone,用旧版的itunes备份手机全部信息 it ...
- 利用python做微信聊天记录词云分析——记录美好回忆
目录 1 概述 2 数据准备 2.1 安卓设备 2.1.1 Root手机,安装Root Explorer 2.1.2 用Root Explorer将聊天记录的数据文件导出并存入电脑 2.1.3 对En ...
- 谁说程序员不浪漫?Python导出微信聊天记录生成爱的词云图
明天又双叒叕是一年一度的七夕恋爱节了! 又是一波绝好的机会!恩爱秀起来! 购物车清空!礼物送起来!朋友圈晒起来! 需要Python软件工具和学习资料的小伙伴可以点击下方链接自行获取 http://no ...
- 【趣味案例】谁说程序员不浪漫?Python导出微信聊天记录生成爱的词云图
说到词云应该不陌生,不知道的童靴往下看 词云,就是把网络文本中出现频率较高的 "关键词"予以视觉上的突出 浏览者只要一眼扫过文本就可以领略其主旨 瞧 这是不是一个有声音.有画面的小 ...
- Python 任意中文文本生成词云 最终版本
前叙 利用下面的代码你将可以将任意中文文本生成词云,其分词部分由jieba,NLPIR2016两个部分组成,生成词语由worldcloud负责,默认会自动发现文本中的20个新词并添加到词库中,当然你也 ...
- python爬取数据生成词云_Python 爬取生成中文词云以爬取知乎用户属性为例
代码如下: # -*- coding:utf-8 -*- import requests import pandas as pd import time import matplotlib.pyplo ...
- 利用Python做一个小姐姐词云跳舞视频
点击上方蓝色小字,关注"涛哥聊Python" 重磅干货,第一时间送达 来源:修炼Python 每周三个人直播,想和我聊天的欢迎来约 朝朝暮暮里,祝愿我们每个人都能沉淀 ...
- 情人节礼物------用她的照片和我们的聊天记录生成词云~
用到的知识点 python读写文件 python正则表达式过滤无用信息 jieba分词与自定义字典 停用词筛选.统计词频 调用wordcloud绘制词云 第一步 从电脑版蛐蛐导出聊天记录.(手机一般不 ...
- 在Python中自然语言处理生成词云WordCloud
了解如何在Python中使用WordCloud对自然语言处理执行探索性数据分析. 最近我们被客户要求撰写关于自然语言处理的研究报告,包括一些图形和统计输出. 什么是WordCloud? 很多时候,您可 ...
最新文章
- SAP UI5 busy Dialog debug - 单步调试
- Postgresql快速写入\/读取大量数据(.net)
- 为什么explorer.exe会占有大量的CPU?
- 2.WindowsServer2012R2装完的一些友好化设置
- 教学思路ASP.Net之服务器控件: 四、FileUpload
- 【QT】QT从零入门教程(六):QDockWidget停靠窗口
- Oracle的重做日志
- 经典排序算法(九)--鸡尾酒排序Cocktail Sort
- FISCO BCOS Solidity 智能合约 return string[] This type is only supported in the new experimental ABI
- 好用的ASP.NET 分页类 简单好用 支持 AJAX 自定义文字
- vue项目中报常见错误
- 国基北盛—云计算容器云pass(2.4)平台搭建
- 服务器运维监控知识体系
- python安装pyqt4_PyQt4 64位下载 PyQt4 for python2.7 v4.8.5 64位 windows 官方简体中文安装版 下载-脚本之家...
- 在光标位置处插入图片
- 真格量化的回测交易撮合机制简介
- rsync与cwRsync
- 【新征程】1、考研路漫漫
- 从头认识一遍“货到人”拣选
- MacOS上ESP8266开发板刷microPython教程