一起来分析QQ数据库吧
- shenapex2025-02-0843365
如果帖子已被锁定无法编辑,请前往网站查看更新
目前对于NTQQ已经有了较为完善的全平台解密教程,但针对其数据库结构的逆向解析工作仍缺乏系统性突破,互联网上只有一部分对列名的分析,NTQQ数据库不仅文件多表名列名也多,想要理清其中的含义是一个大工程,希望佬友在闲暇之余能一起来完善它吧^-^
不知道如何解密数据库?可按照仓库教程解密
github.com

GitHub - QQBackup/qq-win-db-key: 全平台 QQ 聊天数据库解密
全平台 QQ 聊天数据库解密
或者在网站阅读教程
致谢:
1、qq-win-db-key
2、GroupChatAnnualReport
3、失迹の博客
一些说明
1、若无特殊标注,以下
uin均代指QQ号2、对于可变变量均使用{}包裹,如{uin}即表示对应的QQ号
3、无特别说明时间戳均为秒级
4、对于部分用处不大的列名可能不会写出
5、无用的表名不会被列出
db文件内容分析
/data/user/0/com.tencent.mobileqq/databases/nt_db/nt_qq_{QQ_path_hash}/路径下db文件分析(其余客户端基本也符合这个结构)
是否完成分析 |
数据库名字 |
分析 |
|
nt_msg.db |
聊天数据文件 |
|
profile_info.db |
联系人信息 |
|
rich_media.db |
(群聊或私聊发送/接收的文件信息,有待分析) |
|
files_in_chat.db |
媒体文件信息(包括下载的图片视频路径) |
|
recent_contact.db |
(推测为黑名单,待测试) |
|
gpro_v1-6_{nt_uid}.db |
(由于暂未实现数据库解密无法分析) |
|
group_info.db |
群聊信息(包含群头像,群成员等) |
|
guild_msg.db |
频道聊天数据 |
|
collection.db |
QQ收藏数据 |
|
file_assistant.db |
已下载文件存放数据 |
|
misc.db |
见下表 |
|
emoji.db |
(存贮QQ表情包的数据库,不再分析) |
|
group_msg_fts.db |
本地搜索使用的数据库 |
|
data_line_msg_fts.db |
本地搜索使用的数据库 |
|
buddy_msg_fts.db |
本地搜索使用的数据库 |
|
discuss_msg_fts.db |
本地搜索使用的数据库 |
|
msg_fts.db |
本地搜索使用的数据库 |
|
rdelivery.db |
(文件中未发现有效信息) |
|
settings.db |
(无法理解的设置信息,有效信息很少,不再分析) |
|
yffm.db |
(文件中未发现有效信息) |注:
已被删除本人数据库中未发现有意义的数据,因此后续不再探查
蓝色字体是存在有效信息的数据库,有待继续分析
^-^的是已完成对表名的分析(列名会单独重开分析)
当然如果你发现你号对应的db中含有有价值的数据也欢迎提出,再分析……(
各db文件分析
nt_msg.db
group_msg_table群聊数据
group_msg_table表中的部分列含义如下:列名 |
类型 |
MsgRecord |
说明 |40001 |
int |
msgId |
消息ID,具有唯一性 |40002 |
int |
msgRandom |
消息随机值,用于对消息去重 |40003 |
int |
msgSeq |
群聊消息ID,在每个聊天中依次递增 |40010 |
int |
chatType |
聊天类型,私聊为1,群聊为2,频道为4,公众号为103,企业客服为102,临时会话为100 |40011 |
int |
msgType |
消息类型,详见下表 |40012 |
int |
subMsgType |
pb消息类型,详见下表 |40013 |
int |
sendType |
发送标志,本机发送的消息为1,其他客户端发送的为2,别人发的消息为0 ,转发消息为5,在已退出或被封禁的消息中为当日整点时间戳 |40020 |
str |
senderuid |
nt_uid, 对应 nt_uid_mapping_table |40021 |
str |
peeruid |
会话ID |40027 |
int |
peeruin |
会话ID |40041 |
int |
sendStatus |
发送状态,2为成功,0为发送被阻止(如不是对方好友),1为尚未发送成功(比如网络问题),3为消息被和谐 |40050 |
int |
msgTime |
发送消息时的完整时间戳,UTC+8:00 |40090 |
str |
sendMemberName |
发送者群名片,旧版 QQ 迁移数据中格式为name(12345)或name<[email protected]>, QQNT 中为群名片 |40093 |
str |
sendNickName |
发送者昵称,旧版 QQ 此字段为空,QQNT 中未设置群名片时才有此字段 |40080 |
protobuf |
聊天消息,最为复杂 |
尚未解析完 |40900 |
protobuf |
不同情况下存在不一样的数据(以列40011为区分) |
值为8时,列40900存贮转发聊天的缓存
值为9时,列40900存贮引用的消息 |40005 |
int |
只知道自己发的消息一定概率存在数值 |
正常情况为0 |40058 |
int |
当日 0 时整的时间戳格式 |
时区为 GMT+0800 |40006 |
int |
elem id? |
不知道用处 |40100 |
int |
@状态 |
详见下表 |40600 |
protobuf |
状态标志? |
protobuf 格式,详见说明 |40060 |
int |
已退出或已解散的群聊标志 |
|40850 |
int |
回复消息序号 |
该消息所回复的消息的序号 |40801 |
protobuf |
无法理解的protobuf |
|40030 |
int |
群号 |
QQNT 保存的群号 |40033 |
int |
发送者 QQ 号 |
QQNT 保存的发送者 QQ 号 |40062 |
protobuf |
存贮详细表态信息(包括表态表情和表态数量) |
其数字与QQBOT中表情编号对应(超级表情不在此列表中) |40083 |
int |
表态表情数量总和 |
|40084 |
int |
表态表情数量总和 |
|group_at_me_msg被@消息
列名 |
MsgRecord |
含义 |40001 |
Msgid |
消息ID |40027 |
peeruin |
群号 |40020 |
senderUid |
@我的成员的nt_uid |40100 |
atTypeArray |
@类型数组
有人 @ 我:6;@ 群里所有人:1 |40050 |
timestamp |
消息时间戳 |40003 |
msgSeq |
群聊消息ID,在每个群聊中依次递增 |recent_contact_top_table置顶聊天信息
列名 |
含义 |40010 |
聊天类型 |41103 |
置顶时间 |1000 |
当置顶聊天为私聊时,此处显示uin |60001 |
当置顶聊天为群聊时,此处显示peeruin |recent_contact_v3_table聊天对象资料信息
列名 |
MsgRecord |
含义 |40010 |
chatType |
见上表 |40021 |
peeruin / nt_uid |
|40030 |
uin |
c2c才有此值,group此值均为0 |40051 |
lastMessage |
protobuf,最后一条消息 |40041 |
sendStatus |
见上表 |40050 |
lastTime |
最后一条消息的时间戳,单位:秒 |40003 |
msgSeq |
|40094 |
source |
来源 |40093 |
sendNickName |
|40090 |
sendMemberName |
|40095 |
sendremarkName |
成员备注名称 |40020 |
nt_uid |
|40033 |
uin |
|41110 |
groupavatar |
群头像本地缓存路径 |41135 |
|
当通过群聊发起聊天时,显示对应群昵称 |注意:以下信息可能存在不准确性:
所有值均为本人通过自己的聊天信息推断而来,可能存在未发现或错误分析,欢迎大佬指正
40011部分值信息解读
展开阅读
疑似用于区分消息类型
无消息(消息损坏?多见于已退出群聊且时间久远):0
消息空白(msgid存在,应该是没加载出来):1
text文本消息:2
群文件:3
我的聊天记录里没有4~大佬带带>︿<
系统(灰字)消息:5
语音消息:6
视频文件:7
合并转发消息:8
回复类型消息:9
红包:10
应用消息:11
40012部分值信息解读
展开阅读
疑似用于区分pb消息类型
非常规text消息:0
普通文本消息:1
群文件其他类型消息:1
图片消息:2
群文件图片消息:2
群公告:3
群文件视频消息:4
撤回消息提醒:4
群文件音频消息:8
原创表情包:8
射精消息:11
拍一拍消息:12
群文件docx消息:16
平台文本消息:32
群文件pptx消息:32
回复类型消息:33
群文件xlsx消息:64
存在链接:161
群文件zip消息:512
群文件exe消息:2048
表情消息:4096
40011与40012组合可判断消息类型
一些常见消息组合
由于优先级问题(特别是2类别的信息),部分消息不满足以下规则
空消息:0,0
已撤回消息:1,0
普通文本类消息:2,1
图片消息:2,2
只带图片的纯文本消息:2,3
纯表情消息:2,16
带表情的纯文本消息:2,17
带图片带表情的纯文本消息:2,19
纯链接消息:2,129
带表情链接消息:2,145
机器人消息:2,577
机器人Markdown消息:2,65
@消息:2,35
回复引用消息(不带表情):2,33
回复引用消息(带表情):2,49
收藏表情:2,2
收藏表情包:2,4096
群文件其他类型消息:3,1
群文件图片(png,jpg)消息:3,2
群文件视频消息:3,4
群文件音频(mp3,flac)消息:3,8
群文件docx消息:3,16
群文件pptx消息:3,32
群文件xlsx消息:3,64
群文件zip消息:3,512
群文件exe消息:3,2048
拍一拍消息:5,12
撤回消息提醒:5,4
amr语音文件消息:6,0
视频文件消息:7,0
合并转发消息:8,0
回复消息:9,33
回复带图片消息(无@):9,34
回复带图片消息(有@):9,35
回复带图片带@:9,35
回复卡片引用消息:9,49
带表情回复:9,49
带表情带图片带@:9,51
回复存在链接的消息:9,161
红包:10,0
应用消息(如小程序):11,0
群公告:11,3
表情包:17,8
原创表情:17,8
40100值解读
值为6:有人@我;为2,有人@他人;为0,此条消息不包含@
40600值解读
展开阅读
当40600(16进制)值为
14 00时,为回复消息此时:40100的值:
为6代表有人回复自己,为2代表他人回复他人
当40600(16进制)值为
c2e91304a8d114****时(不唯一),为撤回消息c2c_msg_table私聊数据
c2c_msg_table表中的部分列含义如下:列名 |
类型 |
含义 |
说明 |40030 |
int |
私聊对象 QQ 号 |
对方 QQ 号(无论是对方还是自己发送的消息) |40033 |
int |
发送者 QQ 号 |
发送者的 QQ 号 |40050 |
int |
时间 |
时间戳(单位为秒) |40058 |
int |
日期 |
当日 0 时整的时间戳格式 |40093 |
str |
消息发送者 |
QQ 昵称或是备注名 |40800 |
bytes |
消息内容 |
protobuf 格式 |Protobuf 消息格式
消息内容 protobuf 的部分字段含义如下:
Field Number |
类型 |
含义 |
说明 |48000 |
protobuf 或 protobuf array |
消息段 |
一条消息中可以有多个消息段,按内容顺序,类似于富文本;部分类型中可嵌套 |消息段(48000)的部分字段含义如下:
Field Number |
类型 |
MsgRecord |
说明 |
所属Element |40010 |
int |
chatType |
|
|45001 |
int |
elementId |
元素id,与msgid一样,具有唯一性 |
|45002 |
int |
elementType |
|
详见下表 |45003 |
int |
subElementType |
?未确定 |
|45004 |
str |
msgid |
+faceType |
|45101 |
str |
content |
文本消息 |
text |45102 |
str |
text |
语音转文字 |
pttElement |45402 |
str |
fileName |
文件名 |
file、ptt |45403 |
str |
filePath |
文件路径 |
file 、ptt |45405 |
int |
fileSize |
文件大小 |
fileElement 、pttElement |45406 |
int |
md5HexStr |
视频消息中对应videoMD5 |
fileElement |45407 |
bytes |
file10MMD5 |
|
file、ptt 文件消息才存在 |45408 |
bytes |
fileSha |
|
file文件消息才存在 |45409 |
bytes |
fileSha3 |
|
file 文件消息才存在 |45410 |
int |
videotime |
视频时间 |
videoElement、fileElement |45411 |
int |
thumbWidth |
预览封面宽度 |
videoElement |45412 |
int |
thumbHeight |
预览封面高度 |
videoElement |45413 |
int |
thumbWidth |
预览封面宽度 |
|45414 |
int |
thumbHeight |
预览封面高度 |
|45415 |
int |
thumbSize |
预览封面大小 |
videoElement |45416 |
int |
picType |
图片类型,1000为静态图片,2000为GIF |
picElement |45418 |
int |
original |
|
|45422 |
str |
thumbfilename |
(非官方)预览封面路径
位于半私有目录/Tencent/MobileQQ/shortvideo/thumbs/ |
videoElement |45424 |
string|bytes |
originImageMd5 |
|
|45503 |
str |
fileUuid |
|
|45411 |
int |
picWidth |
原图宽度 |
|45412 |
int |
picHeight |
原图宽度 |
|45862 |
bytes |
thumbMD5 |
预览封面MD5(对于45422文件) |
videoElement |45906 |
int |
duration |
语音持续时间 |
pttElement |45923 |
str |
text |
语音转文字 |
pttElement |45925 |
bytes |
waveAmplitudes |
信号频率 |
pttElement |45954 |
str |
picThumbPath |
预览封面路径 |
fileElement |47401 |
int |
replaymsgid |
引用的消息msgid |
replyElement |47402 |
int |
replayMsgSeq |
引用的消息seq |
replyElement |47403 |
int |
replymsgTime |
引用的消息发送时间戳 |
replyElement |47404 |
int |
replymsgTime |
引用的消息发送时间戳 |
replyElement |47413 |
str |
引用的消息 |
仅文本 |
replyElement |47421 |
str |
引用方群昵称 |
|
replyElement |47422 |
int |
sourceMsgIdInRecords |
|
replyElement |47601 |
int |
faceindex |
表情ID |
faceElement |47602 |
str |
facetext |
表情含义(外显文字) |
|47901 |
str |
bytesData |
卡片详细信息 |
|49155 |
int |
msgTime |
发送时间 |
|95654 |
int |
thumbSize |
预览封面大小 |
fileElement |47713 |
str |
撤回消息后缀 |
适用于系统撤回消息 |
系统撤回消息 |48602 |
str |
XML 消息内容 |
适用于 XML 消息 |
XML 消息 |elementType说明
值 |
MsgRecord |
说明 |1 |
textElement |
文本段 |2 |
picElement |
图片段 |3 |
fileElement |
文件消息 |4 |
pttElement |
语音消息 |5 |
videoElement |
视频消息 |6 |
faceElement |
QQ系统表情 |7 |
replyElement |
引用 |8 |
grayTipElement |
系统消息(灰字提示) |9 |
WalletElement |
红包消息 |10 |
arkElement |
卡片消息 |11 |
marketFaceElement |
商城表情 |14 |
markdownElement |
markdown消息 |17 |
inlineKeyboardElement |
markdown按钮消息 |27 |
faceBubbleElement |
弹射表情包 |28 |
shareLocationElement |
位置共享 |其中消息类型(45002)的已知消息类型与对应序号如下:
45002 |
含义 |
说明 |1 |
文本消息 |
普通纯文本消息,以及 at 消息本质上为独立成消息段且内容为 “@群昵称” 的消息,包含于此 |2 |
图片消息 |
|3 |
文件消息 |
|4 |
语音消息 |
|6 |
表情 |
https://bot.q.qq.com/wiki/develop/api/openapi/emoji/model.html |7 |
引用 |
即常说的“回复”,位于消息段开头,其后为正式消息 |8 |
系统消息 |
显示于屏幕中央的灰色小字提示,如撤回、接收文件 |10 |
应用消息 |
|11 |
表情 |
|16 |
XML 消息 |
转发聊天记录本质上也是 XML 消息,包含于此 |21 |
通话消息 |
|26 |
动态消息 |
|profile_info.db
profile_info |
|
|完成解析 |
表名 |
分析 |
|
buddy_list |
好友相关信息 |
|
buddy_req_list_5 |
好友通知 |
|
category_list_v2 |
好友分组信息 |
|
profile_info_adelie |
机器人信息 |
|
profile_info_v6 |
QQ用户信息存贮(包括QID,uin,用户名,个性签名等信息) |展开查看列名分析
buddy_list好友相关信息
列名 |
类型 |
含义 |
说明 |1000 |
str |
nt_uid |
|1001 |
str |
QID |
|1002 |
int |
uin |
|25007 |
int |
分组标识 |
当在默认分组(哪怕已改名)中值为null |buddy_req_list_5好友通知
列名 |
类型 |
含义 |
说明 |21204 |
int |
时间戳 |
UTC+8:00 |21001 |
str |
对方nt_uid |
|20002 |
str |
用户昵称 |
|21502 |
int |
申请是否通过 |
0为通过,1为验证中 |21508 |
str |
验证消息 |
|21509 |
str |
申请来源 |
|21505 |
int |
验证状态 |
1为等待通过,2为同意验证,13为验证过期(?) |60001 |
int |
来源群号 |
|21501 |
int |
申请方标识 |
1为他人发送的申请,0为自己发送的申请 |category_list_v2好友分组信息
其中25011为
protobuf格式,代表着分组Field Number |
含义 |
说明 |25007 |
分组序号 |
0为默认分组 |25008 |
分组名称 |
|25010 |
分组人数 |
As uint(该分组总人数)/As sint(当前在线人数) |profile_info_adelie:机器人信息profile_info_v6QQ用户信息
列名 |
类型 |
含义 |
说明 |1001 |
str |
QID |
设置了才有否则为null |1002 |
int |
uin |
|20002 |
str |
用户昵称 |
|20009 |
str |
用户备注 |
|20011 |
str |
个性签名 |
|1000 |
str |
nt_uid |
|20004 |
str |
头像链接 |
s后面需要带参数,如s=640/100 |21000 |
protobuf |
“尊贵身份标识符” |
protobuf |20072 |
– |
是否为好友 |
hex值为c2e60900表示为好友 |24105 |
protobuf |
个性签名校验值 |
|group_info.db
|
group_info.db |
|完成解析 |
表名 |
分析 |
|
group_avatar |
据名称推断是群头像,未经验证 |
|
doubt_group_notify_list |
过滤群通知 |
|
group_bulletin |
群公告(只有最新一条会被存贮) |
|
group_detail_info_ver1 |
群聊更多信息 |
|
group_essence |
群精华消息 |
|
group_list |
群聊名称列表 |
|
group_member3 |
群成员信息 |
|
group_member_level_info |
群等级头衔信息 |
|
group_notify_list |
群通知 |展开查看列名分析
group_notify_list与doubt_group_notify_list群通知
列名 |
类型 |
含义 |
说明 |61001 |
int |
消息时间戳 |
删除末三位并使用毫秒级时间戳 |61002 |
int |
状态 |
详见下方说明 |61003 |
int |
验证状态 |
1为过滤,0为正常,2为同意,3为拒绝,4为忽略 |61004 |
protobuf |
群组信息 |
群号与群昵称 |61005 |
protobuf |
被操作者 |
nt_uid与QQ昵称 |61006 |
protobuf |
操作者 |
显示于group_notify_list,nt_uid 与QQ昵称 |61007 |
protobuf |
操作人信息 |
显示于doubt_group_notify_list,nt_uid与QQ昵称 |61008 |
int |
操作时间戳 |
秒级时间戳 |61009 |
|
|
|61010 |
str |
对方附加说明 |
|61011 |
str |
系统附加说明 |
如风险提示 |61001说明
申请加群:1
被设置为管理员:3
被移出群聊:6
被管理员拒绝加入:11
自主退出群聊:13
被取消管理员权限:15
group_bulletin群公告
列名 |
类型 |
含义 |
说明 |60001 |
int |
peerUid(群号) |
|64205 |
protobuf |
群公告内容 |
protobuf格式,详见下 |64205为
protobuf格式Byte Range |
Field Number |
Type |
含义 |0-1089 |
64205 |
protobuf |
|├─ 0-8 |
60001 |
varint |
群号 |├─ 8-1084 |
64202 |
protobuf |
|│ ├─ 0-8 |
60001 |
varint |
群号 |│ ├─ 8-36 |
64221 |
string |
发布公告者nt_uid |│ ├─ 40-76 |
64223 |
string |
fid |│ ├─ 80-88 |
64225 |
varint |
msgTime(消息发布时间) |│ ├─ 88-96 |
64226 |
varint |
ctime(公告发布时间) |│ └─ 4-17 |
64452 |
string |
群公告内容 |group_detail_info_ver1群聊更多信息
列名 |
类型 |
含义 |
说明 |60001 |
int |
群号 |
|60007 |
str |
群名称 |
|60216 |
protobuf |
最新一条置顶公告 |
仅存贮外显部分内容* |60217 |
protobuf |
群描述* |
|60026 |
str |
群备注* |
|60002 |
str |
群主nt_uid |
|60004 |
int |
建群时间 |
|60005 |
int |
群聊规模 |
最大可容纳人数 |60006 |
int |
成员总人数 |
|60218 |
str |
群标签* |
|60224 |
str |
入群问题* |
|60240 |
protobuf |
群描述 |
旧版QQ迁移数据 |60340 |
int |
退群标志 |
0为群成员,为已不是群成员 |*表示不一定存在数据
注意到
group_list表中信息与group_detail_info_ver1对应,不再单独分析·如果有大佬能帮忙分析最好了group_member3群成员信息
列名 |
类型 |
含义 |
说明 |64003 |
str |
群昵称* |
未设置为空 |20002 |
str |
QQ昵称 |
|60001 |
int |
所在群聊群号 |
|1000 |
str |
nt_uid |
|1002 |
int |
uin |
QQ号 |64007 |
int |
入群时间 |
|64008 |
int |
最后发言时间 |
|64009 |
int |
最近一次禁言解封时间戳 |
|64010 |
int |
管理员标志 |
0为普通成员,1为管理员 |64015 |
int |
|
|64016 |
int |
是否为群成员 |
0为是,1为已退群 |64023 |
str |
群自定义头衔* |
|64035 |
int |
群成员等级 |
|group_member_level_info群等级头衔信息
列名 |
类型 |
含义 |
说明 |60001 |
int |
群号 |
|67100 |
int |
群等级 |
|67103 |
protobuf |
默认群头衔信息 |
|group_essence精华消息设置提醒
列名 |
类型 |
含义 |
说明 |60001 |
int |
群号 |
|67501 |
int |
msgSeq 群聊消息ID |
在每个群聊中依次递增 |67502 |
int |
msgRandom |
消息随机值,用于对消息去重(用于定位) |67503 |
int |
uin |
消息发送者QQ号 |67504 |
str |
QQ昵称 |
发送者QQ昵称 |67505 |
int |
设置状态 |
1为被设置为精华,2为已被取消精华 |67506 |
int |
uin |
设置精华者QQ号 |67507 |
str |
QQ昵称 |
设置精华者QQ昵称 |67508 |
int |
时间戳 |
设置精华的时间 |emoji.db
展开查看
base_sys_emoji_tableQQ默认表情数据
列名 |
类型 |
含义 |
说明 |81211 |
str |
表情ID |
|81212 |
str |
表情描述(外显文字) |
|81218 |
protobuf |
protobuf格式 |
为81229与81230的下载链接内容 |81221 |
int |
特殊类表情标识 |
0为正常,1为特殊 |81224 |
int |
特殊限定类表情标识 |
|81225 |
int |
特殊限定类表情标识 |
|81226 |
int |
EmojiType |
系统表情为1,emoji表情为2,动态可变表情为3(比如掷骰子) |81266 |
int |
表情类型说明 |
|81229 |
str |
静态图片下载地址 |
|81230 |
str |
APNG图片下载地址 |
emoji 表情没有此链接 |bottom_emoji_table:protobuf格式,包含该账号下已收藏的原创表情数据emoji_config_storage_table:QQ系统表情数据emoji_group_table:包含表情ID说明(如 超级表情0-16)emoji_misc_data_table:QQ默认表情下载地址fav_emoji_info_storage_tableQQ收藏表情数据
列名 |
类型 |
含义 |
说明 |80002 |
str |
文件名 |
格式为{uin}_0_0_0_{MD5}_0_0|80001 |
int |
表情排序 |
倒序,即最新的收藏表情序号为0 |1002 |
str |
收藏用户uin |
|80012 |
str |
本地存贮路径 |
|80010 |
str |
下载地址 |
格式为hxxps://p.qpic.cn/qq_expression/{1002}/{8002}/0|80011 |
str |
表情MD5 |
32位大写 |80213 |
int |
是否为原创表情 |
0为否,1为是 |80201 |
str |
原创表情标识符 |
当80213为1时,显示为对应原创表情的标识符 |80202 |
int |
原创表情包ID |
当80213为1时,显示对应原创表情包ID |80223 |
str |
表情备注 |
|80225 |
str |
表情备注 |
|market_emoticon_package_table原创表情市场
列名 |
含义 |
说明 |80943 |
原创表情 ID |
知道 ID 可在 ../{uin}/nt_qq/nt_data/Emoji/marketface/{ID} 找到已缓存的原创表情包 |80947 |
原创表情包名字 |
|80948 |
表情包说明 |
|market_emoticon_table已下载的原创表情信息
列名 |
含义 |
说明 |80920 |
表情标识符 |
|80943 |
原创表情包 ID |
|80921 |
表情描述 |
外显文字 |collection.db
展开查看
collection_list_info_table收藏信息
列名 |
类型 |
含义 |
注 |180001 |
str |
sid |
用于确定唯一性 |180008 |
int |
type |
详见下表,用于区分收藏类型 |180011 |
int |
last updated time |
最后编辑时间 |180004 |
protobuf |
Source Info |
protobuf,详见下表 |180009 |
int |
frist time |
创建/收藏时间 |180015 |
protobuf |
summary info |
protobuf,摘要信息,详见下表 |收藏类型
值 |
注 |1 |
来源于聊天记录(文本类消息) |2 |
QQ笔记 |9 |
带有链接的聊天消息 |来源信息
Field Number |
注 |18504 |
收藏来源群号 |18505 |
群名称 |18506 |
发送者nt_uid |18501 |
发送者QQ号 |180503 |
备注名/群员名称/用户昵称 |摘要信息
Field Number |
注 |181450 |
标题(可为空) |181452 |
外显描述内容 |181453
18504
180550
180553 |
图片信息
来源会话
图片URL
图片名称 |180561 |
图片本地缓存路径 |180610 |
文件保存位置 |content_list_info_table- 聊天记录和笔记类收藏才存在此信息
列名 |
类型 |
含义 |
注 |180700 |
str |
sid |
与180001对应,可用于确定收藏消息 |180720 |
int |
last updated time |
与180011对应,最后编辑时间 |180708 |
protobuf |
favorite content |
protobuf,收藏实际内容 |files_in_chat.db
展开查看
files_in_chat_table
列名 |
类型 |
含义 |
注 |45001 |
int |
clientSeq |
接收的图片顺序,在本地数据库中递增 |82300 |
int |
msgRandom |
消息随机值,用于对消息去重 |40001 |
int |
msgid |
消息ID |45403 |
str |
filepath |
文件存贮路径 |45404 |
str |
thumbpath |
预览图缓存路径(多见于视频) |40020 |
str |
nt_uid |
发送者nt_uid |40021 |
str |
peeruid/senderuin |
来源群号/QQ号 |40010 |
int |
chatType |
聊天类型,具体见此 |82301 |
int |
未查明 |
|45002 |
int |
ElementType |
|45003 |
int |
subElementType |
|45402 |
str |
fileName |
文件名 |45405 |
int |
fileSize |
文件大小(KB) |40050 |
int |
msgTime |
发送时间 |82302 |
int |
original |
是否为原图,1为是,0为否 |- 这里面主要存贮的是有关下载文件、语音文件、视频文件的信息
图片大部分
45403值为空主楼 - 大帅哥2026-02-086194
- shenapex2026-02-0843365
- 宇宇2026-02-0843366
- XIANG2026-02-089451
- jadap466472026-02-0829786
太强了佬,感谢分享,学习了
- 樱悦(酒馆腻了中)2026-02-0835700
这也能弄到
- shenapex2026-02-0843365
- muscipular2026-02-0843367
看来qq的数据库比微信复杂多了。。。
- hnres2026-02-0843368
不是?这也太强了吧
- lenluo2026-02-0828256
佬友是真的强
- IO012026-02-0843369
- shenapex2026-02-0843365
感谢大佬解惑 ^-^这下明白为啥要单独弄一个数据库出来了,原来是方便搜索啊
- shenapex2026-02-0843365
因为微信把所有数据全部塞在一个数据库里面了(
- shenapex2026-02-0943365
感觉现在已经晕头转向了……好多,整理起来好麻烦
- shenapex2026-02-1043365
现在才发现好多被我忽略的db文件是有有效信息的^-^也不知道当时怎么分析的……
- 点赞的暴富2026-02-1043370
现在新版qq能不能针对某个群聊,物理删除所有聊天图片,目前没找到这种工具,有数据库是不是能实现,现在群太多了一堆文件
- shenapex2026-02-1043365
新版qq能不能针对某个群聊,物理删除所有聊天图片
有up做过捏
github.com

GitHub - tjxwork/qq_db_export_group_image_path_and_move_or_delete: QQ数据库导出群图片路径并移动或者删除
QQ数据库导出群图片路径并移动或者删除
这是视频,补个专栏
纯新版似乎还没人做,但是目前我忙着整理数据库条目,思维很混乱(
有能力可以自己编写脚本
- dwd2026-02-1043371
学习一下
- voideluyi2026-02-1043372
微信的有吗佬
