导出微信聊天记录生成词云

本文介绍了如何使用安卓模拟器获取微信聊天数据库,通过sqlcipher解密并导出数据,最后利用python生成词云。首先在夜神模拟器中备份微信聊天记录,然后结合IMEI码和UIN码解密数据库,最后通过jieba分词和wordcloud生成词云。尽管词云可能包含大量无意义词汇,但整个过程提供了分析聊天记录的一种方法。
摘要由CSDN通过智能技术生成


工作内容

  • 使用安卓模拟器获取微信聊天数据库
  • 使用sqlcipher解密数据库
  • 使用python生成词云

一、获取聊天数据库

本文使用的是夜神模拟器,下载地址为https://www.yeshen.com/。
在夜神模拟器中下载微信和RE文件管理器(Root Explorer),开启root权限,将聊天记录先从手机备份到电脑,再从电脑备份到模拟器。


打开RE文件管理器,在路径/data/data/com.tencent.mm/MicroMsg下找到一个由32位字符串命名的文件夹,找到该文件夹下的EnMicroMsg.db文件,将其复制到夜神模拟器的共享文件夹。共享文件夹的位置为mnt/shell/emulated/0/others ,现在访问windows的 C:\Users\你的用户名\Nox_share\OtherShare 获取该数据库文件( EnMicroMsg.db )。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最后,可以在电脑上获得如图数据库。
在这里插入图片描述

二、解密数据库

使用sqlcipher读取数据,下载地址为https://pan.baidu.com/s/1pLlLOA6ZDV5Nl0beMFvM4A (密码:kfe2)。
打开数据库需要密码,手机的IMEI码和微信的UIN码连起来用md5加密后得到一串32位的字符串,取其前7位即为数据库的密码。

1.获取IMEI码

许多博客介绍的方法为在模拟器右上角的系统设置——属性设置中可以获取IMEI码,尝试后发现密码错误。
在这里插入图片描述
直接使用1234567890ABCDEF作为IMEI码,成功。
在这里插入图片描述

2.获取UIN码

使用RE文件管理器,在模拟器的路径
/data/data/com.tencent.mm/shared_prefs下找到auth_infokey_prefs.xml文件并打开,default_uin的value就是UIN码。
在这里插入图片描述
在这里插入图片描述
将IMEI码和UIN码连起来,使用在线md5工具加密(https://md5jiami.bmcx.com/),密码是小写32位md5值的前7位。
在这里插入图片描述

3.使用 sqlcipher 导出聊天数据

输入密码进入数据库,打开message表,表中就是存储的聊天记录。
在这里插入图片描述
可以直接在File - export中导出成csv和sql格式。

三、生成词云

import jieba
import wordcloud
import imageio
mask = imageio.imread("xxx.png")//选择自己想要的背景图片形状
f = open("xxx.txt", "r", encoding = "utf-8")//存储聊天记录的txt文件
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = " ".join(ls)
w = wordcloud.WordCloud(font_path = "msyh.ttc", mask = mask, width = 1000, height = 700, background_color = "white")
w.generate(txt)
w.to_file("grwordcloud.png")

由于没有对数据进行处理,生成的词云会有大量无意义字符串和词汇。这个坑就tbc吧,下次情人节再填坑。
在这里插入图片描述


总结

本文参考的博客包括但不限于:

https://www.cnblogs.com/Qqun821460695/p/11962632.html

https://blog.csdn.net/iphilo/article/details/79052325?
ops_request_misc=&request_id=&biz_id=102&utm_term=%E5%BE%AE%E4%BF%A1%E8%81%8A%E5%A4%A9%E8%AE%B0%E5%BD%95&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-0-
79052325.pc_search_result_control_group&spm=1018.2226.3001.4187

https://www.jianshu.com/p/fd8c6dabecb8

https://www.freesion.com/article/21801172639/

https://www.cnblogs.com/Qqun821460695/p/11962632.html

https://www.cnblogs.com/mgblog/p/12653710.html

使用RE文件管理器进行操作的图片来自
https://www.cnblogs.com/Qqun821460695/p/11962632.html

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值