一、数据库的导出
拷贝出微信数据库文件
如果安卓手机已root,可使用Root Explorer把微信数据库文件拷贝出来。
具体文件路径为data/data/com.tecent.mm/MicroMsg/.../EnMicroMsg.db(可在MicroMsg文件下直接搜索EnMicroMsg.db找到)。将EnMicroMsg.db文件拷贝到电脑。
[站外图片上传中...(image-4c6c1b-1514991490986)]找寻key打开数据库
数据库拷贝到电脑后是加密的,需要提供key来打开数据库。
key=IMEI(手机序列号)+UIN(用户信息号)(个人认为微信的数据库加密还是做的不错)
- IMEI的找寻,在手机拨号界面输入*#06#即可找到IMEI。
[站外图片上传中...(image-95cc57-1514991490986)] - UIN的找寻,可使用Root Explorer从data/data/com.tecent.mm/shared_prefs/system_config_prefs.xml中将system_config_prefs.xml文件拷贝到电脑。
[站外图片上传中...(image-b0862c-1514991490986)]
在电脑端用notepad++等软件打开拷贝的system_config_prefs.xml文件,
- 找到了IMEI和UIN就可以计算出其md5值了。在MD5计算器中输入IMEI+UIN后,计算出md5值选取前七位即可作为key。
- 打开数据库
用专用软件,输入key打开数据库。
输入如下查询语句,可以查到与所要查找的人的聊天记录。
select datetime(subStr(cast(m.createTime as text),1,10),'unixepoch', 'localtime') as theTime,
case m.isSend
when 0 then r.nickname
when 1 then '我'end as person,m.content
from message
m inner join rcontact r on m.talker = r.username
where m.type=1 and r.nickname = '对方微信昵称'
导出聊天记录,将聊天记录message信息导出为CSV。
至此,数据库已导出,后续内容为数据清洗与可视化。