GetQzonehistory:一键备份QQ空间历史说说,找回完整的数字记忆档案
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
翻旧相册时,发现自己2014年写的那条说说在空间里已经搜不到了——空间页面不断刷新,历史说说悄悄掉出页面。GetQzonehistory 是一个免费的 Python 工具,能一键备份你的QQ空间历史说说,连同评论和转发一起归档。适合所有空间用户,耗时 5 到 30 分钟(取决于数据量),你会得到一套完整的 Excel 表格和网页版说说。
它能解决什么
空间页面只看得到最近的内容——几年前的说说在页面上很难翻到,工具直接抓取空间的历史消息列表,把页面上看不到的大部分说说都恢复出来。
手动截图费时费力还不全——一条条截图会漏掉图片和评论,工具自动分批抓取、逐张下载说说图片,评论一并归档。
数据混在一起难整理——说说、转发、留言纠缠在一处,工具自动拆分成不同的 Excel 表格,还能生成可浏览的网页版说说。
从零到跑通:QQ空间说说备份安装步骤
环境准备
先安装 Python 3.7 或更高版本,然后克隆项目并安装依赖:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory python -m venv myenv激活虚拟环境(Windows 执行.\myenv\Scripts\activate,Linux/macOS 执行source myenv/bin/activate),再安装依赖:
pip install -r requirements.txtLinux/macOS 用户还需要提前安装 zbar 库(扫码识别用):dnf 系统执行sudo dnf install -y zbar,macOS 执行brew install zbar。
首次运行
- 执行
python main.py,程序会生成登录二维码(这一步不需要做任何配置) - ✅ 用手机 QQ 扫码确认登录,全程不需要输入密码
- 登录成功后出现进度条,程序每批抓取10条消息,批与批之间间隔 3 秒
- 结束后程序自动打开结果目录,并打印消息总数、最早说说时间等统计信息
你会得到什么:导出文件说明
运行完成后,结果保存在resource/result/你的QQ号/目录下:
resource/result/你的QQ号/ ├── 你的QQ号_全部列表.xlsx ├── 你的QQ号_说说列表.xlsx ├── 你的QQ号_转发列表.xlsx ├── 你的QQ号_留言列表.xlsx ├── 你的QQ号_其他列表.xlsx ├── 你的QQ号_好友列表.xlsx ├── 你的QQ号_说说网页版.html └── pic/你的QQ号_全部列表.xlsx:抓取到的全部消息,含时间、内容、图片链接、评论四列你的QQ号_说说列表.xlsx:你本人发布的说说你的QQ号_转发列表.xlsx:你转发过的内容你的QQ号_留言列表.xlsx:好友在你说说下的留言你的QQ号_其他列表.xlsx:与你互动相关、但不是你发布的其他内容你的QQ号_好友列表.xlsx:有互动的好友昵称、QQ 号和空间主页链接你的QQ号_说说网页版.html:还原空间样式的网页版说说,带头像和评论pic/:所有说说图片,按内容命名,重名时自动加时间戳
数据长这样:
| 时间 | 内容 | 图片链接 | 评论 |
|---|---|---|---|
| 2015年3月20日 14:30:22 | 你的昵称:今天天气真好,适合出去走 | https://example.com/1.jpg | 1条评论 |
| 2016年8月15日 20:45:10 | 你的昵称:毕业快乐,下一站是工位 | https://example.com/2.jpg | 3条评论 |
保存位置由resource/config/config.ini控制,想改到别的目录可以直接改这个配置文件。
它是怎么做到的:QQ空间历史说说抓取流程
核心数据源是空间的"历史消息列表"。扫码登录后,工具分页请求这个列表,每批 10 条——消息里记录了谁和谁互动、说说内容和图片链接,所以连页面上看不到的说说也能恢复。随后再抓取当前可见的说说做补充,与消息列表重复的内容会被去重,最后按说说、转发、留言分类,分别存成 Excel 并逐张下载图片。
main.py:主程序入口,负责协调登录、抓取和数据保存util/LoginUtil.py:扫码登录,cookie 存在resource/user/,下次可直接复用登录状态util/RequestUtil.py:处理空间接口请求util/GetAllMomentsUtil.py:抓取当前可见说说,作为数据补充util/ToolsUtil.py:HTML 解析、内容去重、网页模板生成
所有数据都在本地处理,不会上传到任何服务器;登录走官方扫码,全程不涉及密码。
进阶玩法
按年份统计发布频率:用 pandas 读一下 Excel,看看自己哪一年最活跃。
import pandas as pd df = pd.read_excel("123456789_说说列表.xlsx") df["时间"] = pd.to_datetime(df["时间"], format="%Y年%m月%d日 %H:%M:%S", errors="coerce") print(df["时间"].dt.year.value_counts().sort_index())定时自动备份:登录状态会持久保存,重跑程序即可增量补齐。把任务加进系统定时任务(Windows 任务计划程序或 cron),比如每月 1 号凌晨执行一次python main.py。
做一本个人纪念册:网页版说说是单个 HTML 文件,改改配色和排版就能变成纪念册,还可以打印成册或导出 PDF。
二次开发:代码按模块划分,想加导出字段或换格式,只需要改main.py里的解析和保存逻辑。
避坑指南
遇到"无法找到 zbar 共享库"的提示——这是 Linux/macOS 缺扫码依赖,安装 zbar 后重跑:dnf 系统sudo dnf install -y zbar,macOSbrew install zbar。
遇到二维码过期或登录失败——重新运行程序生成新二维码即可;登录状态保存在resource/user/,未过期时再次运行可以直接选择已登录的账号。
遇到想找回的某条说说始终找不到——工具基于历史消息列表,"仅自己可见"或已被删除的说说无法恢复,这是平台侧的限制,越早备份越完整。
遇到运行时间很长——每批 10 条、间隔 3 秒,几千条说说跑 30 分钟以上很正常;图片逐张下载,建议预留 1GB 左右磁盘空间。
遇到中途中断——按 Ctrl+C 结束时已抓取的数据会保存下来,重新运行即可,不用从零开始。
上手清单
- 克隆项目:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory - 创建虚拟环境并安装依赖:
python -m venv myenv后执行pip install -r requirements.txt - 运行
python main.py - ✅ 手机 QQ 扫码登录,等待进度条走完(说说多时 30 分钟以上)
- ✅ 打开
resource/result/你的QQ号/检查表格和网页版说说
别等那些年的说说彻底找不到了才动手,今天跑一次,数据就留在本地了。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考