Python|分析 QQ 群聊信息,记录词频并制作词云
Author:AXYZdong
自动化专业 工科男
有一点思考,有一点想法,有一点理性!
定个小小目标,努力成为习惯!在最美的年华遇见更好的自己!
更多精彩文章前往:👉 个人主页
环境:Python 3.7 开发工具:自带的 IDLE
一、前期准备
1.提取 QQ 聊天记录
1、QQ 聊天框打开消息管理
2、选择需要提取聊天记录的群,然后右击选择导出聊天记录
3、选择保存为 .txt 格式
4、保存后打开是这个样子:
记得把这个 .txt
文件保存到与后面建立的 .py
文件的同一个目录里面
2.准备相关的库
pip install xxx
就可以了
wordcloud 这个安装时可能会报错,可以尝试以下方法:
到 这里 手动下载
cp37 表示 Python3.7 版本,后面 win32 和 win_amd64 表示 32 位和 64 位
对应自己的 Python 版本和位数,选择合适的下载
二、正则表达提取消息文本
1、设置编码格式,使用 utf-8
编码:
2、正则表达匹配日期,格式为 年/月/日 或者 年-月-日
\d 表示任意一个位的数字(0~9)
\d{4} 表示这个数字为 4 个长度,比如 2020
\d{1,2} 表示 1~2 个长度,比如 6,06
三、提取群成员的消息
将群成员发的消息保存至列表中,遍历所有消息,符合时间正则的留下,并用 flag 进行标记,从而将特定的群成员消息提取出来。<br>
四、词汇处理
jieba.cut()
进行分词,如果是常见词(remove_words)
跳过,如果大于 1 的话就放入列表collections.Counter(words)
将经过分词过得消息进行词频统计word_counts.most_common(10)
统计前 10 词频<br>
五、制作词云
六、效果
当然这个背景、字体啥的都可以自己设置的。
七、完整代码
八、总结
没事做的时候可以统计一下群里龙王发了多少条消息,哈哈哈,再做个词云
python 拥有强大的库,库与库之间相互配合,相互协作,造就了丰富的可视化图形
在进行代码移植时,可能会出现不兼容现象,不同的开发工具的规则不同,按照规则来问题不会很大
【参考文献】
[1] https://blog.csdn.net/zhr1030635594/article/details/105348459
[2] https://blog.csdn.net/fly910905/article/details/77763086
本次的分享就到这里
如果我的文章对你有帮助、如果你喜欢我的文章内容,请 “点赞” “评论” “收藏” 一键三连哦!
听说 👉 点赞 👈 的人运气不会太差,每一天都会元气满满呦!^ _ ^
码字不易,大家的支持就是我坚持下去的动力。点赞后不要忘了👉 关注 👈我哦!
如果以上内容有任何错误或者不准确的地方,欢迎在下面👇留个言。或者你有更好的想法,欢迎一起交流学习~~~
版权声明: 本文为 InfoQ 作者【AXYZdong】的原创文章。
原文链接:【http://xie.infoq.cn/article/0e6d80c3c30679ccbc50fa66e】。文章转载请联系作者。
评论