GetQzonehistory 一键备份 QQ 空间历史说说:5 分钟把动态、评论和配图搬回本地
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
打开 QQ 空间说说列表往三年前翻,页面突然就空了——平台的互动记录只保留"部分记录",消失的部分找不回任何入口,平台也没有提供任何数据导出功能。GetQzonehistory就是为此做的工具:用历史消息列表和可见说说做双通道,把几年攒下的动态、评论和配图全部搬到本地硬盘。
工具定性:纯本地运行,扫码登录不碰密码
这是个纯 Python 的本地工具,没有服务端中转,从登录到导出,数据只落在你自己的硬盘上。登录走官方 QQ 空间扫码,全程不碰密码,凭证是一张本地 cookie,过期了重新扫一次就行。从扫码到弹出结果文件夹,第一轮跑完大约 5 分钟,之后全自动。
产出规格:跑完核对 6 个表格和图片目录
一轮跑完,你的硬盘上会多出 6 个 Excel 表格、1 个还原空间样式的网页版页面、1 个图片目录,全部落在resource/result/你的QQ号/目录下。每个 QQ 号一个独立目录,表格和图片都在其中,目录平铺,方便整份拷走。
| 文件 / 目录 | 内容说明 |
|---|---|
QQ号_全部列表.xlsx | 全部互动消息的完整时间线,含时间、内容、图片链接、评论 |
QQ号_说说列表.xlsx/转发列表/留言列表/其他列表 | 你自己发布的原创说说、转发过的内容、收到的留言、未归入上述分类的内容,各一张表 |
QQ号_好友列表.xlsx | 互动过的好友昵称、QQ 号、空间主页 |
QQ号_说说网页版.html | 还原空间说说道风的可视化页面,说说和评论按线上样式渲染 |
pic/目录 | 说说配图,按内容自动命名归档,一张图一个文件 |
磁盘占用主要在大头——图片上,每 1000 条说说大约 100MB,跑之前先瞄一眼剩余容量。
能力边界:能拿到什么拿不到什么,跑之前判断清楚
能拿到:
- 历史消息列表里的完整互动时间线,平台保留多少条,你的可恢复上限就是多少条
- 所有未删除的可见说说,能翻到 2014 年之前的记录,第二通道在 GetAllMomentsUtil 实现,每页 30 条
- 每条说说附带的评论文本、图片链接和好友信息,网页版页面照样还原渲染
拿不到:
- 仅自己可见、且未出现在消息列表里的记录——既不公开也不在互动流里,当前没有任何合法途径能还原
- 已从空间删除、且不在消息列表中的说说,平台侧不留痕,永远拿不回来
总判断:你最想翻的那些互动内容,基本都在可恢复范围内;但如果说你的动态以仅自己可见为主,或者只想存两三条特定内容,手动保存就够了,不用跑全套。
| 维度 | 手动截图存档 | GetQzonehistory |
|---|---|---|
| 覆盖范围 | 零散几条,翻到哪算哪 | 消息列表 + 可见说说双通道 |
| 图片 | 截图压缩,画质打折 | 自动下载,链接替换成高清版 |
| 评论互动 | 基本丢失 | 随说说一并保留,网页版照样渲染 |
| 登录方式 | 要输密码或手动维护会话 | 官方扫码,全程不碰密码 |
反直觉的一点:消息列表是平台替你维护的互动流水,它保留多少条,你的"可恢复上限"就是多少条——备份这件事拖得越久,上限本身越低。
⚠️ cookie 是一张"临时门禁卡":会过期。程序把凭证存在本地
resource/user/目录,重复运行时输入序号即可复用;显示"已失效"就重新扫码,别把 QQ 密码交给任何工具。
执行路径:运行 main.py 并扫码登录
第1步:克隆仓库并建虚拟环境
给工具圈一块独立地盘,避免它的依赖和你机器上其他项目互相打架。
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,两条别混用。release 页也有打包好的单文件版可以直接执行,但源码版方便排错,建议用上面的方式。
✅ 完成标志:命令行前缀出现(myenv)。
💡 排错:激活命令报"找不到",多半是路径层级错了——
myenv文件夹必须在你当前目录下;如果提示 python 命令不存在,先确认装好了 Python 3。
第2步:用 pip 安装依赖
一条命令拉齐 GetQzonehistory 的全部依赖:requests发网络请求,beautifulsoup4解析网页结构,pandas把数据整理成表格,qrcode生成登录二维码,tqdm画进度条。
pip install -r requirements.txt✅ 完成标志:终端输出Successfully installed ...。
💡 排错:Linux / macOS 用户如果卡在
pyzbar相关报错,是系统缺少 zbar 图像识别库,程序会提示安装方式(RPM 系用sudo dnf install -y zbar,macOS 有 Homebrew 时会引导安装),照提示装完重跑即可。
第3步:运行 main.py 扫码登录
跑主入口 main.py,终端会打印一个用字符拼成的二维码,掏出手机 QQ 扫一下、点确认,授权即完成,全程没有任何输入密码的环节。
python main.py✅ 完成标志:看到用户<QQ号>,<昵称>登录成功。
登录凭证以 cookie 形式存在resource/user/,下次运行若列出已登录账号,输入序号复用,不用重新扫码。
⚠️ 排错:显示"二维码已失效"就重新运行
python main.py再生成一次;如果手机和电脑之间挂了代理,先放行登录请求再扫。想看扫码会话的实现,直接翻 登录逻辑。
第4步:等进度条走完,核对导出目录
登录之后程序自己干活:先探测历史消息总数,再按每批 10 条分页抓取,批与批之间停顿 3 秒——这是刻意的防风控节奏,不是卡死,别急着关。随后第二通道按每页 30 条抓可见说说,抓完自动做内容归类、下载图片、生成网页版,并直接打开结果文件夹。
这一步没有要敲的命令,守着终端窗口等进度条走完即可。
✅ 完成标志:终端打印各清单条数(共有 X 条消息、最早的一条说说发布在...、图片列表共有 X 张图片),文件管理器弹出resource/result/你的QQ号/目录。
💡 排错:中途想停,直接 Ctrl+C——程序注册了信号处理,会先把已有数据保存完整再退出;重跑时已保存的 Excel 不丢,新抓到的按内容去重后再合并。个别图片偶尔下载失败属正常,重跑一次即补。
⚠️ Linux 无图形界面的服务器环境没有"自动打开文件夹"这步,终端会提示手动打开,属正常现象。想深入每一环的实现,直接翻 消息抓取模块,都在项目里,不用猜。
故障恢复:出问题按这张表查
| 现象 | 先做什么 |
|---|---|
| 二维码扫了没反应 | 重跑python main.py重新生成;检查代理是否拦截登录请求 |
| 进度到一半断了 | 已有数据已自动保存,重跑合并即可 |
| Excel 打不开 | 先关掉正占用文件的 WPS / Office 窗口;仍不行用 pandas 读取 .xlsx |
| 图片下载很慢 | 批次间 3 秒停顿是防封策略,别强杀进程 |
| 个别图片缺失 | 下载失败属正常,重跑一次即补 |
| cookie 已失效 | 重跑时输入账号序号复用;显示"已失效"就重新扫码 |
数据落地:拿到 6 个表格后的三个动作
拼一条年度时间线。打开QQ号_全部列表.xlsx按年份筛,哪年去了哪座城市、哪段时间深夜感慨最密集,一目了然——比任何年度报告都真实。
统计谁才是老铁。用QQ号_好友列表.xlsx拉数据透视表,看每个好友的互动频次和最近互动时间,关系厚薄自己心里有数。
给回忆上双介质保险。把QQ号_说说网页版.html转成 PDF 存网盘,重要节点再打一本实体册;电子文件怕硬盘罢工,多介质、多位置才算真正存住。
收尾清单:成果归档与备份
- 克隆 GetQzonehistory 仓库并建虚拟环境(命令行前缀出现
(myenv)) - 安装依赖(终端显示
Successfully installed) - 运行
python main.py完成扫码登录 - 等进度条走完,核对
resource/result/下 6 个表格 + 网页版 +pic/目录 - 把整个
resource/result/目录复制到至少两个不同存储位置,并纳入常规备份
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考