ios设备获取微信存储的聊天文本信息

有一次,一个朋友问我,你有办法能找到我已经删掉的微信聊天记录吗,我说我可以尝试看看,网上应该有不少教程,这也引起了我的兴趣,便看一看微信在ios系统中是什么样。

当然,网上的各种教程很多,我也是copy了他们大部分的操作,毕竟我真解决不了那些基础的问题。

1.首先下载iTunes软件

这个直接可以到apple的官方下载即可,安装之后连接自己的手机,将手机的数据备份到本地电脑

2.下载楼月的iTools软件

使用这个软件可以将本地备份的数据读取并显示出来,同时将微信聊天记录的Documents目录导出,这可以算是聊天文件的根目录

下载地址:楼月iTools地址

3.还得下载楼月的一个恢复助手软件

所以我说我都是copy前人的工作,这些技术点都有人帮你铺了路才能使用的这么方便。

下载地址:楼月恢复助手下载

这里只要解压缩就可以,使用.exe文件打开即可

最后的界面可以显示出这台ios设备登陆过的用户,以及这个用户对应的用户码,这个用户码在后面需要用到!

4.进入到Documents文件夹之中,一堆杂乱数字字母组成的就是用户码,根据对应的用户码进入相应的文件夹,再进入DB文件夹,这就是微信存储聊天文本的地方,稍微懂点技术的人会知道,手机存储可以使用sqlite数据库,我们需要寻找的就是.sqlite文件

5.这时处理的方法很多,我使用了sqlite3进行操作,sqlite3的下载可以直接百度搜索下载

我直接复制了一个MM.sqlite文件到解压目录进行操作

使用cmd进入sqlite3安装目录

执行以下指令

// 使用sqlite3 指定打开某个路径下的.sqlite文件
sqlite3 x:/xxxx/sqlite3/MM.sqlite

//.tables 显示所有存在的表
.tables

这里的chat_xxxxxxxxxxxx结尾的就是存储的聊天文本

//使用这个sql脚本就可以查出表里所有的内容
select * from chat_xxxxxxxxxx;

它的文本内容存储都是xml格式,想要解析的话也比较方便

//查看数据库表结构,开头PRAGMA指令需要大写,括号里面是表名
PRAGMA table_info(chat_xxxxxxxxxxxxxxxxx);

字段名,字段类型都可以显示出来,为其他程序处理这些数据提供了便利

这里的数据文本记录都是chat_xxxxxxxx表存储的,稍微想一下,这些统一的32位字符代表的含义就能猜到,大概就是对应的聊天用户。这里使用了MD5加密成统一的32位字符。

后面用Java程序解析了一下.sqlite文件,也算是将聊天记录进行了本地的备份吧,毕竟存在自己的数据库里面也算是比较安全了。

不得不吐槽一下安卓,开源的安卓现在root是越来越困难了。。。当然安卓的获取与这个类似,只要找到数据库存储文件就可以啦。

猜你喜欢

转载自blog.csdn.net/m0_38129920/article/details/82149755