微信公众号:[开源日记],分享10k+Start的优质开源项目。
我们每天使用最多的软件应该就是微信了,那你有没有想过,我们每天的聊天记录里使用最多的词是什么,都有哪些情绪,最近是悲观还是乐观呢等等。
今天推荐的这个项目是「wechat_analysis」,用 Python 对微信聊天记录进行文本分析。
先整体预览一下整个项目结构:

具体步骤
1、导出聊天记录
-
content 列:聊天内容
-
type 列:信息类型(1 代表文本消息,需要用 excel 筛选一下之后只分析 type=1 的数据)
-
isSend 列:0 代表对方发送的信息,1 代表自己发送的信息
-
createTime:时间(暂时不知道怎么恢复成年月日),但是降序排序以后的顺序是聊天记录由近到远的顺序
-
newTime:记录聊天记录所在月份,是根据 createTime 降序排序后,手机上看每月最后几句信息,在 excel 中搜索,来进行月份划分

2、生成词云
调用 generate_word_cloud.py。


3、计算情感得分均值,作折线图(使用 snownlp)
-
调用 get_sentiment_score() 函数,将情感得分保存到 csv 的 sentiment_score 列中
-
调用 draw() 函数,将情感得分随时间变化值保存到 result 文件夹中
snownlp 得到的分值不一定准确,所以 send 和 receive 的得分值都差不多,但也有可能日常的交流就是比较中性的,没有什么大起大落的情感。

4、计算情绪分类,作热力图(使用大连理工情感词典)
调用 sentiment_dict.py;
注意第 115 行,如果没有匹配到任何情感词,就记为 None,绘制热力图的时候会筛掉 None 的记录。

地址:https://github.com/saturn-opposition/wechat_analysis
更多功能广大网友可以继续挖掘。
微信公众号:[开源日记],分享10k+Start的优质开源项目。
原文始发于微信公众号(开源日记):快来有个项目能分析一下你的聊天记录
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/49320.html