news 2026/10/27 18:44:48

把QQ空间历年说说完整备份到本地:GetQzonehistory 使用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
把QQ空间历年说说完整备份到本地:GetQzonehistory 使用指南

把QQ空间历年说说完整备份到本地:GetQzonehistory 使用指南

【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory

GetQzonehistory 是一款免费开源的 Python 工具。手机 QQ 扫一次码后,它会逐批拉取你账号的历史消息列表,最终把说说、评论和好友导出为 6 份 Excel 表格、一个还原空间样式的网页,以及一套本地配图,全部落在resource/result/目录下。

开始之前:先确认它适不适合你

如果你从大学起就常发 QQ 空间说说,想给多年的记录留一份离线副本,或者需要原始文本做统计整理,这个工具正对路。它的做法是绕开空间主页,直接走底层的消息列表接口,能翻到你手动翻页根本翻不到的早年内容。

有几条边界要直说:已删除的说说、当年设过仅自己可见的说说,消息列表里本来就没有,拿不回来;账号需处于正常使用状态,首次运行必须扫码;老账号消息量大,10 条一批、每批固定等 5 秒、批与批之间再停 3 秒,整体以小时计,不适合指望几分钟出结果。

📋 最终产出:你会拿到哪 7 类文件

先说结果,再讲过程。跑完主程序后,文件统一放在resource/result/{你的QQ号}/下:

文件里面装什么
{QQ号}_全部列表.xlsx全部互动消息的完整底表,按时间排序
{QQ号}_说说列表.xlsx你原创的说说:时间、内容、图片链接、评论
{QQ号}_转发列表.xlsx转发类内容的完整记录
{QQ号}_留言列表.xlsx别人在你空间留下的评论
{QQ号}_好友列表.xlsx好友昵称、QQ 号、空间主页链接
{QQ号}_其他列表.xlsx未归入上面几类的互动内容
{QQ号}_说说网页版.html还原空间样式的网页,带头像、评论,图片自动换高清版

另有pic/子目录,存放说说配图的本地副本:文件名取自说说内容、限 40 字符,重名时自动追加时间戳。拿到手之后,用 Excel 按年份筛选、把 HTML 打印成纪念册、或导入数据库做时间线,都是常见玩法。

🚀 三步跑通:从克隆到导出

第 1 步:克隆仓库并搭好 Python 环境

git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory python -m venv myenv

激活虚拟环境(Windows 运行.\myenv\Scripts\activate,macOS/Linux 运行source myenv/bin/activate),再执行pip install -r requirements.txt。强烈建议用虚拟环境,因为 pandas、Pillow 等依赖版本敏感,requirements.txt 里全部锁了具体版本。

如果失败:Linux 和 macOS 上,扫码依赖的 pyzbar 需要 zbar 共享库,缺失时程序会当场提示安装命令——Fedora 系执行sudo dnf install -y zbar,Mac 装了 Homebrew 的话直接回 y 让它自动装。装完 zbar 重新运行即可,不用改任何代码。

第 2 步:运行 main.py,手机 QQ 扫码

python main.py

终端会生成一个 ASCII 二维码(同时存为resource/temp/QR.png),用手机 QQ 扫一下就行,全程不经过账号密码。登录票据只写入本地resource/user/目录。之后如果扫过多个账号,会先列出已登录用户,输入序号选用,输 0 则重新扫码。

如果失败:登录态是临时的,隔段时间再跑可能提示登录失败。重新运行main.py扫一次码即可,无需其他处理。

第 3 步:等它分批拉完,结果自动导出

不需要额外命令。main.py 先用二分搜索的方式估算消息总数,再按 10 条一批循环拉取;每批之间主动暂停 3 秒,进度条走得慢是正常现象。拉完后程序自动清洗、分类,生成上表全部文件,并按系统各自的方式打开结果目录。

如果失败:中途按 Ctrl+C 也没关系,信号处理函数会先把已抓到的数据落盘再退出,修复问题后重跑即可。老账号批次多、总时长长,看到进度条在动就等它,别中途手动结束。

附赠入口:fetch_all_message.py 再导一份 Markdown

主流程之外还有个独立脚本 fetch_all_message.py:

python fetch_all_message.py

它走的是另一条"当前可见未删除说说"接口,每页 30 条逐页翻完,把结果写成resource/fetch-all/下的所有可见说说.md,配图按{tid}0.jpeg之类命名下载,转发原文和每条评论都保留。代码注释明确说这条路能覆盖 2014 年之前的说说——如果你发现主流程结果里缺了些早年内容,值得再跑一遍它。

🛠 三个值得看一眼的设计

  • 双数据源,去重合并:消息列表覆盖大部分历史,但可能漏掉部分说说;所以主流程末尾由 GetAllMomentsUtil.py 补抓一遍当前可见说说,按内容去重后并入,两个来源互补。
  • 先缓存,后导出:原始响应先落盘为 JSON 文件(resource/temp/、resource/fetch-all/),重跑时命中缓存就不再重复请求;信号处理器保证 Ctrl+C 时已抓数据不丢。
  • 编码与跨平台容错:每批响应用 chardet 自动探测编码,防止老页面中文乱码;ToolsUtil.py 负责按系统切换目录打开方式(os.startfile/open/xdg-open等),并把[em]…[/em]表情标记还原成真实表情图片标签。

📖 两种典型用法

准备换手机删 QQ 的"老用户":卸载前想给十几年的空间留档。跑完一次全量导出,几百条说说连同配图和当时的评论全部落盘,又把 xlsx 导入数据库做了一份带时间线的备份,删号也不再心疼。

想做成长纪念册的人:用 Excel 按年份筛出 2015 到 2019 的原创说说和留言,挑出有故事的那几条,配合pic/里的本地图片排版打印,做成一本可以翻的实体册子——不用再去网页里一条条找图。

今晚就可以克隆仓库、跑一次main.py,把结果目录整个拷进移动硬盘,给你的空间建起档案柜。

本工具仅供学习和技术研究使用,请遵守相关法律法规与平台条款,尊重账号数据的所有权。

【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/27 18:43:05

FactoryBluePrints:7000+ 戴森球计划工厂蓝图导入与使用指南

FactoryBluePrints:7000 戴森球计划工厂蓝图导入与使用指南 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints FactoryBluePrints 是《戴森球计划》的工厂蓝图仓库…

作者头像 李华
网站建设 2026/10/27 18:41:21

Faster-Whisper工业落地指南:低延迟高并发语音转写实战

简介:本资源是基于CTranslate2加速的高效语音识别实现——Faster-Whisper开源项目完整代码包,面向AI工程师、语音处理开发者及Transformer模型实践者,解决Whisper原生推理速度慢、内存占用高的实际部署瓶颈。项目通过轻量级C后端重写核心模块…

作者头像 李华
网站建设 2026/10/27 18:38:43

硬件加密锁,正在退场

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/27 18:36:02

UVa 767 Game

题目描述 一个孩子绘制了 NNN(N≤100N \le 100N≤100)个带编号的彩色圆圈。他用彩色有向线段连接了其中一些圆圈。任意一对圆圈之间可以存在多条不同颜色的线段。每种颜色(无论是圆圈颜色还是线段颜色)都被赋予一个不超过 1001001…

作者头像 李华
网站建设 2026/10/27 18:35:33

开源贡献指南:如何将任意音频模型移植到MLX Audio Swift

【免费下载链接】mlx-audio-swift A modular Swift SDK for audio processing with MLX on Apple Silicon 项目地址: https://gitcode.com/gh_mirrors/ml/mlx-audio-swift 点击查看 免费下载 MLX Audio Swift 是一个开源的模块化 Swift 音频 SDK,基于 M…

作者头像 李华
网站建设 2026/10/27 18:33:05

2000-2024年 省级-城乡收入差距泰尔指数数据(xlsx)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华