微信聊天记录导出教程:免费开源WeChatExporter,10分钟备份iPhone全部对话
【免费下载链接】WeChatExporter一个可以快速导出、查看你的微信聊天记录的工具项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter
新手机用了三个月,旧手机的微信记录一直没迁。突然有一天旧手机开不了机,三年的工作群聊、找不着的那条消息,全卡在那块死掉的屏幕里。用一款叫WeChatExporter的免费开源微信聊天记录导出工具补上这个缺口:无需越狱,把iPhone微信里的文字、语音、图片、视频一次性导出到电脑,全程10分钟级。
WeChatExporter项目速览:它是什么、给谁用
WeChatExporter是一款在电脑上解析、导出并回看微信聊天记录的开源工具:读取iPhone的不加密备份,生成一个可离线浏览的聊天记录文件夹,还内置"查看聊天记录"页面直接翻阅。
适用人群:手上是iPhone、需要把微信记录备份下来的macOS用户;安卓用户可先把聊天记录迁移到iPad,再走同样流程。
核心特性:
- 无需越狱:只需一份不加密的iTunes备份,核心是里面的MM.sqlite数据库
- 多媒体全保留:文字、语音、图片、视频都在,语音自动解码成可播放格式
- 全程本地:解析和浏览都发生在你自己的电脑上,数据不出内网
- 免费开源:界面、逻辑、构建方式都可以按需修改
基础信息清楚了,下面直接进操作,全流程拆成三个阶段:准备、导出、验证。
WeChatExporter操作全流程:备份、导出、验证三阶段
阶段一:准备:不加密备份与数据提取
第1步,在iTunes里做一份不加密的完整备份。iPhone连上Mac,在iTunes中选中设备后创建完整备份。
⚠️ 千万不要勾选"给iPhone备份加密",否则里面的MM.sqlite读不出来,整个流程直接作废。
第2步,用iMazing导出微信的Documents文件夹。在备份中找到微信应用的数据目录,把Documents文件夹导出到本地,确认里面有MM.sqlite这个文件——它就是微信的聊天数据库。

第3步,安装Node.js和nwjs。两个都按官网提示装好即可,nwjs选0.40.1版本,与仓库里预编译的SQLite模块匹配,后面能省掉一次本地编译。
阶段二:核心步骤:安装依赖与四步导出
# 下载WeChatExporter并安装依赖(在终端中依次执行) git clone https://gitcode.com/gh_mirrors/wec/WeChatExporter cd WeChatExporter/development npm install# 放入预编译的SQLite模块,跳过本地编译(对应nwjs 0.40.1版本) mkdir -p node_modules/sqlite3/lib/binding/node-webkit-v0.40.1-darwin-x64 cp framework/node-webkit-v0.40.1-darwin-x64/node_sqlite3.node node_modules/sqlite3/lib/binding/node-webkit-v0.40.1-darwin-x64/# 启动微信聊天记录导出工具 npm start工具启动后,4步点完就能导出:
- 点击"开始原始数据分析",选中刚才导出的Documents目录,左上角出现这台手机登录过的微信账号;
- 点击任意账号,左下角列出聊过的朋友和群聊,默认只显示消息总数超过100条的对话,自动帮你过滤噪音;
- 点开任意对话,右侧显示最近10条记录,确认没选错人后进入下一步;
- 填写输出目录和日期区间,点击"开始生成数据"。

阶段三:结果验证:查结构、验播放
生成结束后会得到一个输出文件夹,里面是5类内容:
- data.sqlite:结构化的聊天数据库
- audio/、image/、video/:语音、图片、视频文件(含缩略图)
- resource/:头像等资源文件
再进入"查看聊天记录"页面,输入这个输出目录:记录以气泡形式呈现,图片点击可放大,语音直接播放。确认无误后,原始的Documents目录已经没用了,可以删掉。

基础流程走通后,再看三个高频问题的处理方式。
WeChatExporter深度用法:三个高频问题,三套解法
只要某段时间的记录:设置日期区间
你得到的是:只导出关心的区间,不必把五年记录一次搬完。操作很简单:在"开始生成数据"页面填入From和To两个日期,区间外的记录直接跳过。比如只想要2023年的对话,就填2023-01-01到2023-12-31;两项都不填则全量导出。
几百个联系人,如何快速锁定目标
你得到的是"先确认、再导出",避免选错人返工。工具默认只列出消息总数超过100条的对话,点开任何一个还能预览最近10条,两秒钟就能确认是不是要找的对象,再进入导出环节。
语音图片会不会丢失:内置silk解码
微信语音是silk私有格式,浏览器原生播不了。工具在development/framework/silk-v3-decoder/下自带silk解码器和ffmpeg,导出时自动转换;图片保留原始质量,查看时点击即可放大。文字只是骨架,多媒体才是聊天记录的主体,这部分它替你保住了。
卡住的时候先别慌,对照下表找现象,多数解法已经写死。
WeChatExporter避坑清单:现象对照,解法直接抄
| 现象 | 最可能的原因 | 解法 |
|---|---|---|
| sqlite3编译失败,npm install卡住 | 编译环境缺失或版本不匹配 | 不编译:把development/framework/下预编译好的node_sqlite3.node(按你的nwjs版本选文件夹)复制到node_modules/sqlite3/lib/binding/ |
| 开始分析后不显示微信账号 | 备份加密了,或选错目录 | 回iTunes重做一份不加密备份;确认选中的是含MM.sqlite的Documents目录 |
| 导出进度卡住无反应 | 磁盘空间不足或消息量过大 | 清理磁盘,缩小日期区间分批导出,再重启工具 |
| 导出的语音播放不了 | silk解码文件缺失 | 检查development/framework/silk-v3-decoder/下解码器是否齐全,换浏览器打开导出页面再试 |
⚠️ 仍然解决不了时,用工具右上角[工具]→[导出运行日志]把日志导出,版本不符是最常见的根本原因。
问题清完之后,还有两件事值得顺手做掉:把流程脚本化,以及认一认源码目录。
进阶与扩展:自动化脚本与源码目录导览
把"准备→导出→归档"串成脚本
工具本体是图形界面,尚不支持完全无人值守,但准备和归档环节可以脚本化,中间只留一次点击:
#!/bin/bash # 微信备份半自动化:建时间戳目录、启动工具、提示本次输出路径 OUTPUT_DIR="$HOME/WeChatBackup/export_$(date +%Y%m%d_%H%M%S)" mkdir -p "$OUTPUT_DIR" echo "请把工具中的输出目录填为: $OUTPUT_DIR" cd /path/to/WeChatExporter/development npm start每周固定跑一次,工具里只需要"填输出目录、点开始生成数据"这两下,时间戳目录天然帮你按周归档。
源码目录导览
- 界面模板(改界面看这里):development/templates/
- 核心逻辑(解析、导出、查看的控制器):development/js/
- 预编译SQLite模块、silk解码器:development/framework/
- 完整使用说明与已知限制:README.md
流程全部走通后,最好的动作就是现在做掉。
现在就开始:完成你的第一次微信聊天记录备份
把iPhone连上电脑,从今天的不加密备份开始,全程大约10分钟,别等手机坏了才想起它。请仅用于合法备份自己的数据,不碰他人隐私。
【免费下载链接】WeChatExporter一个可以快速导出、查看你的微信聊天记录的工具项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考