Skip to content

Muyu-Chen/qq-Message-Output

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 

Repository files navigation

qqmessageoutput

安卓QQ聊天记录导出/安卓QQ数据库解密

update

20240212:给程序加了一个判定语句,防止消息为空时产生bug。

Usage

# 初始化
q = QQoutput(dbfile, key)
# 获得所有好友的个人资料
q.getAllMyFriends()
# 导出聊天记录
q.output(yourfriendqq, mode)

Tips

获取db文件手机最好要root。但是当初经过我不屑的探索,没有root也不是没有办法。

在QQ官方更新了聊天记录备份功能之后,可以先将数据备份到电脑,然后再把数据导入到一个root过的设备(比如模拟器),再提取db文件。

获取db文件的方法请移步我写的文章:安卓QQ聊天记录导出、备份完全攻略

data\data\com.tencent.mobileqq\databases\你的QQ.db

另外我还发现,如果聊天记录过多,会将较早的聊天记录存入以下数据库

data\data\com.tencent.mobileqq\databases\slowtable_你的QQ.db

yourkey是解密的密钥,一般是手机序列号,拨号键盘下输入*#06#

部分新版qq的解密密钥则可能位于以下文件中

data\data\com.tencent.mobileqq\files\kc

手机QQ的db文件加密方式是异或加密,如果找不到自己的key可以反向破解

刚刚发现,QQ竟然支持手机聊天记录备份了!!!

QQmsg

Update

[2019-10-02]新增了QQ群的消息记录导出,mode=1是好友,2是群

[2020-04-22]增加导出所有好友个人资料功能,优化代码(以前写的代码冗余太多,太烂了

[2020-07-01]增加可能的其他解密key,感谢@howyay提供

[2020-07-20]修复昵称中存在emoji的解密问题,感谢@ctem049修复

[2023-06-10]修复聊天记录中存在空消息时解密的问题,感谢@MuyuChen修复

ToDo

  • 自行解密key功能
  • 导出的聊天记录用不同颜色区分是“你”说的,还是“我”说的
  • 导出的聊天记录用QQ-昵称-备注这样的形式,增加辨识度

About

安卓QQ聊天记录导出-修改bug后-已提交至master分支

Topics

Resources

Stars

Watchers

Forks

Languages

  • Python 100.0%