GetQzonehistory 完整使用指南:3 步把 QQ 空间历史说说与图片备份到本地
2026/9/20 9:12:45 网站建设 项目流程

GetQzonehistory 完整使用指南:3 步把 QQ 空间历史说说与图片备份到本地

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

打开 QQ 空间想翻回 2016 年发过的一条说说,结果消息列表只保留最近的内容,往前的记录已经翻不到。这就是 GetQzonehistory 要解决的现实问题:它通过模拟登录 QQ 空间,把账号下可见的历史说说的文字、图片、评论和留言批量抓下来,存成本地 Excel 和图片文件。全程扫码登录,不需要输入密码,也不需要你懂编程。

它是什么:一个 QQ 空间历史说说备份工具

GetQzonehistory 是一个本地运行的 Python 小工具,核心思路是两条抓取链路:

  • 互动消息列表:QQ 空间"消息盒子"里能翻到的所有互动记录(自己发的、转发的、好友留言的),每条 10 个、间隔几秒地分批拉取;
  • 未删除说说接口:直接按分页拉取你空间里所有可见且未删除的说说,包括 2014 年以前的老内容。

两条链路的结果去重合并后,按"说说 / 转发 / 留言 / 其他 / 好友"分类写成 Excel,图片单独下载到文件夹,最后再渲染出一个可在浏览器里翻阅的网页版。需要说明的边界是:仅自己可见、已删除、或被平台清理掉的内容,任何工具都拿不回来,它抓取的范围以消息列表和公开可见接口返回的为准。

能力地图:从文字到图片的完整落盘

工具覆盖的内容可以分成四组:

分组具体产出存放位置
结构化数据全部列表、说说列表、转发列表、留言列表、其他列表、好友列表,共 6 份 Excel(含时间、内容、图片链接、评论)resource/result/你的QQ号/
图片资源说说配图自动下载,按内容命名,重名自动加时间戳resource/result/你的QQ号/pic/
网页版合并说说与转发、按时间倒序排列、还原评论和表情的单文件 HTML,方便直接翻看或分享结果目录内*_说说网页版.html
深度导出独立入口fetch_all_message.py,按 30 条/页拉取全部未删除说说(含 2014 年前),生成 Markdown 版所有可见说说.md,配图使用高清原图resource/fetch-all/

另外支持多账号:resource/user/目录会按 QQ 号缓存登录态,下次启动时列出已登录用户让你选序号,输入 0 则重新扫码。

最快上手:克隆、装依赖、扫码

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 python main.py

运行后终端会打印一个二维码,用 QQ 扫一下,看到"登录成功"就开始抓取。每批 10 条、批间休息 3 秒,进度条会实时显示,结束后自动打开结果文件夹并打印各分类的条数统计。整个过程无需输入密码。

它是怎么跑的:扫码登录 + 两条抓取链路

理解机制只需看两个文件:

  • util/LoginUtil.py:走 QQ 官方扫码登录流程。它请求登录二维码(qrsigptqrlogin轮询),成功后把 cookies 存到resource/user/QQ号文件,这就是多账号复用登录态的来源。注意它依赖pyzbar(底层是 zbar 库),Linux 上需要先sudo dnf install -y zbar,macOS 上程序会提示你用 Homebrew 安装。
  • main.py:主流程入口。先登录,再按批次调用 util/RequestUtil.py 拉互动消息,用 BeautifulSoup 解析每条记录的昵称、QQ、时间、正文和图片;随后调用 util/GetAllMomentsUtil.py 按分页补齐未删除说说;最后save_data()写 Excel、下载图片、渲染 HTML。signal.signal注册的信号处理函数会在你按 Ctrl+C 中断时先落盘已抓到的数据,避免前功尽弃。

想改导出目录的位置,改resource/config/config.ini里的路径即可,util/ConfigUtil.py 负责读取。

谁适合用,以及典型用法

  • 想留底的老用户:空间用了十年以上,历史内容大部分已翻不到,用它做一次全量落盘是最省事的方案;
  • 毕业季、换号前的一次性整理:跑一次主程序拿到 Excel + 图片 + 网页版三套产物,直接归档或制作纪念册;
  • 需要结构化数据的人:Excel 里带时间、内容、评论列,可以接 pandas 做发布频率、活跃年份之类的统计;
  • 只要纯文字存档的人:跳过主程序,直接跑python fetch_all_message.py,产出的是带高清图的 Markdown,更适合长期文本保存。

和手动备份、第三方导出比,它差在哪

差异主要在三点。

覆盖面:手动截图只能覆盖你当时翻到的页面,而它从消息列表和说说接口两条路抓,自己发的、转发的、别人留言的分别成表,不易遗漏(已删除或仅自己可见的除外)。

数据形态:截图是死图,而它的产物是结构化 Excel,可以筛选、排序、导入分析工具;HTML 版保留了时间线、头像、评论和 QQ 表情的还原,比一堆截图更接近原空间浏览体验。

流程成本:第三方导出类工具有的需要账号密码、有的把数据中转上云;它走官方扫码、数据全程在本机磁盘,pip install之后一条命令跑完,不需要你理解接口细节。代价是它依赖网页版接口,QQ 空间改版时可能需要等上游更新才能修复。

数据与隐私:一切都留在本地

  • 登录:官方扫码,密码不经过程序;本地只存 cookies 文件(resource/user/);
  • 处理:抓取、解析、写文件全部在本地完成,代码开源可自查,util/ 下五个模块各司其职,没有向第三方服务器上传数据的逻辑;
  • 收尾建议:备份完成、确认结果无误后,可以自行删除resource/user/resource/temp/下的登录缓存;结果目录resource/result/再复制一份到其他存储介质,做到两地保存。

避坑清单:遇到症状先查这里

症状可能原因处理
启动报"无法找到 zbar 共享库"pyzbar需要系统级 zbar 库Linux 执行sudo dnf install -y zbar;macOS 按提示用 Homebrew 安装 zbar 后重启程序
二维码一直"认证中"或已失效手机未确认,或终端里黑白块渲染错乱重新运行让它刷新二维码;终端显示异常时改用生成的resource/temp/QR.png图片扫码
抓完条数明显偏少平台只保留有限历史消息,老内容不在消息列表里主程序已自动合并"未删除说说接口"的结果;仍不满意就跑fetch_all_message.py走全量分页
图片没下载下来图片链接为空、非 http 链接或下载时网络失败属正常跳过逻辑,重跑一次;个别丢失只能手动补
Ctrl+C 后担心数据丢失误以为中断即清零信号处理函数会先调用保存逻辑,已抓到的数据会写入结果目录,再重跑即可
提示"获取消息失败:第 N 批次,返回值为空"单批请求偶发失败程序会跳过该批继续,结束后可重跑补齐

开始之前核对一遍

  • 电脑已安装 Python 3,并可用命令行执行python -m venv
  • Linux 用户先装好 zbar 库,macOS 用户按提示走 Homebrew;
  • 手机 QQ 在手,随时可以扫码;
  • 磁盘预留空间:文字数据很小,主要是图片,按 10 万条说说估几百 MB 到 1 GB 都算正常;
  • 只备份自己的账号,抓取节奏保持默认间隔,不要自行加速批量操作。

工具本身没有魔法,它的价值只有一句话:把平台上随时可能翻不到的历史说说,变成一份完全由你保管的本地档案。跑通一次、归档一次,剩下的就是时间的问题。

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

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询