am928 发表于 2025-3-15 00:42:38

微信QQ聊天记录导出为Excel或txt文件教程:Java破解数据库密码与群聊内容提取

网上有很多教程,不过这些教程比较乱,且大多是关于 iOS 的。我找到了一篇由韦阳撰写的靠谱博客,名为《微信聊天记录导出为电脑 txt 文件教程》。本文是以这篇博客为基础,接着对 Java 破解数据库密码以及如何从数据库中寻找群聊内容等操作进行了更详细的阐述,还打包了工具包,并做了一些修改,在此向原博客作者表示感谢。

本文的最终目的在于把微信或 的聊天记录从备份文件里提取出来,接着生成 Excel 或者 txt 文件,然后通过文本分析来制作好玩的词云图片,从而获取聊天内容里的热词,在后续还能够分析群聊中谁是话痨以及词语之间的关联性等,词云的效果图是如下这样的:

的聊天记录获取方法较为简便,其具体方式置于文末。接下来为大家介绍微信的相关教程。首先需要下载工具包:

Step 1:导出手机微信的数据库文件至电脑

将手机端的微信数据库.db 文件导出至电脑上。以小米手机的 MIUI 为例,在这种情况下,MIUI 无需进行 root 操作。

首先进入手机的设置,找到我的设备。接着进入备份和重置,再进入本地备份。然后输入密码,点击新建备份。之后把两个勾去掉。再点击软件程序右边的尖括号,选择微信。接着点击确定。之后点击开始备份,等待完成即可。

接着把手机与电脑相连,开启手机目录里的 MIUI////文件夹,把.bak 文件复制到电脑上,再将其重新命名为 com..mm.bak。

用某一种压缩包软件打开这个 com..mm.bak 文件,例如 360 压缩可以,然后将

将 apps\com..mm\r\\xxxx\.db 这个文件解压到电脑上,其中 xxxx 是一串随机字母,代表你的微信用户,且每个人的都不一样,通常是最大的那个文件夹,如下图所示的文件夹。

其他手机导出方法:

比较简单,通过备份来参考。对于其它安卓手机,部分需要 root 权限,其中一种办法是先 root,然后在/data/data/com..mm/下面去寻找这三个文件。一种无需 root 的方法如下:先在电脑上安装一款安卓模拟器,接着在模拟器里下载手机微信并进行登录,其中最为关键的一步是把手机端的聊天记录备份到电脑端微信,之后再将电脑端的聊天记录恢复到安卓模拟器里的微信,而这个功能是微信本身所具备的,通常不会有什么难度。首先对安卓虚拟器进行 root 操作,而 root 这个操作在设置中是具备的。接着,就能够将三个文件都拷贝到电脑上了。

Step 2:破解数据库密码(JAVA)

4. 安装JAVA环境

安装jdk-13.0.-.exe文件,下载地址:



然后配置环境变量,参考:。

5. 将上面解压出的三个文件放置在-文件夹下:

https://img1.baidu.com/it/u=4110472744,130326780&fm=253&fmt=JPEG?w=608&h=431

6. 执行Java代码破解数据库密码

在此文件夹下打开命令行窗口,运行下面的代码:

<p><pre class="code-snippet__js" data-lang="css">    <code><span class="code-snippet_outer">javac IMEI.java</span></code><code><span class="code-snippet_outer">javaIMEI 以及 systemInfo.cfg 和 CompatibleInfo.cfg</span></code></pre></p>
得到的结果,第三行即为数据库的密码,保存下来。

Step 3:导出聊天记录

打开压缩包中的.exe 软件,接着利用该软件打开.db 数据库,然后输入之前得到的数据库密码。

这时候会显示出许多表格。接着点击菜单栏中的 File 选项,然后选择 Table as CSV file。之后选择需要导出的表,再进行导出操作。将其命名为.csv 格式,选定路径后开始导出,此过程可能需要几分钟时间。

可以直接使用 Excel 来打开(此处所使用的)。如果显示乱码,那么可以新建一个 Excel 表格,接着点击“数据”——“来自文本”,之后导入这个.csv 文件。打开之后呈现的是下面这个样子。

其中包含微信消息的发信人 ID 以及聊天内容。若为群聊,发信人 ID 会是一个 xxxxx@格式的 ID。倘若我们要分析一个群聊的内容,首先就得找到这个群聊的所有聊天记录,并将其导出到文件中。

在手机上找到一句这个群聊之前的聊天记录,接着选中其中一栏,之后点击 excel 右上角的查找和选择功能中的查找,进行搜索,若找到了那一行,就能够得到群聊的 ID 了。

导出至文本文件的步骤如下:首先复制这个 ID,接着回到列表第一行,然后点击 Excel 右上角的排序和筛选并选择筛选,在其中填入刚刚找到的 ID,之后点击确定,这样就能获取这个群聊的所有聊天记录,最后单击列并将其全部复制到.txt 文本中。

Step 4:分析聊天记录生成词云

(支持,未测试,推荐使用)

11.将.txt复制到文件夹下,执行:

https://img2.baidu.com/it/u=3465191494,2933761621&fm=253&fmt=JPEG&app=138&f=JPEG?w=1106&h=500

<p><pre class="code-snippet__js" data-lang="css">    <code><span class="code-snippet_outer">使用 python 运行 process_wechat.py 并传入 message.txt 文件。</span></code></pre></p>
去除无用信息后,会产生一个.txt 文件,这个文件就是处理完的聊天记录。

安装 jieba 库,需要运行下面两条命令来安装三个库:

<p><pre class="code-snippet__js" data-lang="properties">    <code><span class="code-snippet_outer">pip install jieba</span></code><code><span class="code-snippet_outer">pip install wordcloud</span></code><code><span class="code-snippet_outer">pip install imageio</span></code></pre></p>
如不爬墙上网,此过程可能较慢。

13. 在文件下执行:

<p><pre class="code-snippet__js" data-lang="css">    <code><span class="code-snippet_outer">Python 运行 create_word_cloud.py 这个程序,并传入 __message.txt 作为参数。Python 使用 create_word_cloud.py 来处理 __message.txt 文件。Python 借助 create_word_cloud.py 对 __message.txt 进行相关操作。</span></code></pre></p>
可以生成词云,效果呈现如下,能够获得词云图片以及一个.txt 文件,此文件中存储着所有词语的排序信息。

生成QQ聊天记录词云

打开消息记录,接着右键点击小闹钟标记,之后点击下方的消息管理器,再导出某个群聊的聊天记录。

接着选择保存类型为 txt ,接着点击保存按钮,并且把文件保存在根目录当中。

3. 然后打开命令行运行:

<p><pre class="code-snippet__js" data-lang="css">    <code><span class="code-snippet_outer">使用 python 运行 preprocess.py 这个脚本,并传入 filename.txt 作为参数。</span></code></pre></p>
用来去掉聊天记录中的昵称和时间等信息:

最后运行:

<p><pre class="code-snippet__js" data-lang="css">    <code><span class="code-snippet_outer">使用 python 运行 create_word_cloud.py 并传入 __filename.txt 文件。</span></code></pre></p>
就能生成QQ聊天记录词云了。
页: [1]
查看完整版本: 微信QQ聊天记录导出为Excel或txt文件教程:Java破解数据库密码与群聊内容提取