WeChatMomentExport iOS
1.0.0
WeChatMomentExport-iOS是用C#编写的朋友圈导出工具
重要:仅适用于iOS的朋友圈数据库,兼容iOS微信7.0.12
重要:由于微信6.3.27之后对他人朋友圈的图片进行了加密(wxpc格式),所以暂时不支持导出他人朋友圈。
注意:使用前,打开微信,清空一下缓存(此步非必须,但是可以减少备份和拷贝所需的等待时间),然后直接打开自己的朋友圈,往下翻到最早的一条,将自己所有的朋友圈缓存到本地。如果不放心,可以翻页完成之后断网确认是否还能看到,能看到意味着已经缓存成功。
从iOS8.3之后,苹果关闭了沙盒访问,所以无法直接访问微信的Document文件夹了。但是可以曲线救国,用iTunes或iMazing(推荐)备份手机数据,然后从备份数据中提取微信的Document内容。
在微信的Document中,存在着至少一个以Hash字符串命名的文件夹(如果在这个手机上登陆过多个微信,则可能存在多个)。像这样的↓
eb8a6093b56e2f1c27fbf471ee97c7f9
这样的文件夹中就存放着微信用户的个人数据。
拷贝wc文件夹下的wc005_008.db至本项目的Debug文件夹中(找不到的话,生成项目)即可。
修改Main函数中的初始化部分
MomentExporterFacade exporterFacade = new MomentExporterFacade("这里改成自己的Hash字符串", true);
F5运行。
运行后,会有以下文件(夹)输出:
文件(夹) | 说明 |
---|---|
Plist | 存放自己发布过的所有朋友圈(wc005_008.db里导出的原始文件) |
Json | 存放所有解析好的朋友圈JSON文件 |
ViewLocalFile | 存放下载到本地的朋友圈中的文件(图片,视频之类的) |
Viewstaticscriptdata.js | 用于展示的朋友圈数据 |
导出完成后,打开DebugViewIndex.html就能看到自己的朋友圈时间线。
由于本人前端技术非常的凑合,所以并没有弄出特别华丽的展示效果,有兴趣的朋友可以PullRequest。
一些已知作用的文件(夹)。
文件(夹)名 | 作用 |
---|---|
Audio | 语音消息的缓存 |
DBMM.sqlite | 聊天记录数据库 |
DBWCDB_Contact.sqlite | 通讯录数据库 |
Img | 聊天图片缓存 |
Video | 聊天小视频缓存 |
wcwc005_008.db | 朋友圈缓存 |