GetQzonehistory:QQ空间说说导出工具,一次扫码备份全部历史说说、图片与评论
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
翻旧空间时,网页版翻十几页就翻不动了,更早的内容其实一直在,只是你懒得再翻。GetQzonehistory 用一次手机 QQ 扫码,把你账号可见的全部历史说说——文字、图片、评论——完整导出成本地 Excel 和图片文件,全程跑在你自己的机器上。
一次完整导出交付哪些文件
所有产物都落在resource/result/你的QQ号/目录下:
| 文件 | 内容 |
|---|---|
QQ号_全部列表.xlsx | 全量记录:时间、内容、图片链接、评论 |
QQ号_说说/转发/留言/其他列表.xlsx | 原创说说、转发、留言、好友动态分表存放 |
QQ号_好友列表.xlsx | 互动中出现的好友:昵称、QQ 号、空间主页 |
QQ号_说说网页版.html | 浏览器打开即用的时间线页面,文字表情渲染成图片 |
pic/ | 说说配图的全量本地副本 |
启动前预检:装环境与系统依赖
先确认三件事:Python 版本 3.7 以上;拿到代码并进入目录;装齐依赖(requirements.txt共11 个包,国内网络可加镜像源)。
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistorypip install -r requirements.txt⚠️ 启动前先装好 zbar,否则扫码登录会直接失败。条码识别库 pyzbar 依赖系统里的 zbar 共享库,pip 装不了(登录逻辑在 util/LoginUtil.py)。Linux 执行
sudo dnf install -y zbar或sudo apt install libzbar0;macOS 执行brew install zbar。装完再启动程序。
从扫码到出结果的完整操作流程
- 启动并扫码:运行
python main.py,终端会拼出一个字符二维码。用手机 QQ 直接扫,全程不输入账号密码。 - 确认登录成功:终端打印「用户<QQ号>,<昵称>登录成功」即为成功。cookie 已存进
resource/user/,下次运行免扫码。 - 盯两条进度条:第一条抓互动消息列表,每页 10 条、页间停 3 秒;第二条抓可见的未删除说说列表,每页 30 条。耗时和数据量成正比,几千条跑几十分钟都正常。
- 看结尾统计:跑完打印总消息数、最早说说时间、好友数、图片数,并自动打开结果目录。
中途想停,直接按Ctrl+C即可。程序注册了信号处理,已抓到的数据会先落盘再退出。
跑完后的验证三步与排障速查
验证是否跑对,走三步:
- 看结尾统计:总消息数、好友数、图片数、各表行数
- 核对「最早一条说说」的时间,和你使用空间的年限是否对得上
- 打开
QQ号_说说网页版.html,检查时间线、图片、评论渲染是否正常
跑偏了先对照这张表:
| 现象 | 原因 | 解决办法 |
|---|---|---|
| 启动即提示找不到 zbar 共享库并退出 | pyzbar 依赖系统 zbar,pip 装不了 | 用系统包管理器按上面命令安装 |
| 终端二维码看不清、扫不出 | 字符图案在部分字体下显示不全 | 改扫存好的图片resource/temp/QR.png |
| 下次运行又要扫码 | 登录 cookie 过期 | 重新扫一次;若频繁出现,检查系统时间是否准确 |
原理拆解:它凭什么拿到更早期的记录
两个数据源是怎么合并的
互动消息列表在 main.py 的主循环里逐页拉取。可见未删除说说列表在 util/GetAllMomentsUtil.py 里先查总条数算出页数,再逐页取完。后者能捞到互动列表里已经翻不到、但空间里仍可见的早期记录。两份数据都有本地缓存,重跑不会重复请求。
分类与去重规则怎么定
规则很直白:内容含「留言」进留言表,含「转发」进转发表,昵称是你自己的进说说表,其余归「其他」。早期记录的时间有的缺秒数,解析时按两种格式各试一次。合并前按内容去重,同一条说说不会被计两次。
图片与表情是怎么处理的
配图逐张下载进pic/,文件名取说说文本前 40 个字符并过滤非法字符,重名自动加时间戳。说说和转发两张表一起渲染成 HTML,QQ 文字表情替换成图片标签,浏览器打开就是原样表情。
边界与合规
- 只取你账号可见的数据,「仅自己可见」和已删除的说说不可能拿到,这是机制边界而非故障。
- 登录、抓取、导出全程在你本地机器完成,数据不出机器。
- 导出文件含好友昵称、QQ 号、评论内容,别对外上传分享。
- 工具仅限个人备份与技术研究,不要商用或大规模抓取。
第一次跑通后,打开网页版 HTML 翻到最底部,看那条时间跟你记忆中的第一条说说对不对得上。之后把resource/result目录定期备份到另一块存储即可。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考