如何5分钟完成QQ空间历史说说本地归档:GetQzonehistory零基础指南
2026/9/20 10:19:12 网站建设 项目流程

如何5分钟完成QQ空间历史说说本地归档:GetQzonehistory零基础指南

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

本地备份QQ空间历史说说:GetQzonehistory 是什么

上周有人翻QQ空间找一张三年前的合照,页面卡在加载圈出不来,换网络也没用——平台接口一变,这张照片可能就永远取不回来了。GetQzonehistory 做的事情很直接:把QQ空间的历史说说、转发、留言连同图片抓取到本地,存成 Excel 和图片文件夹。它是为不懂编程的普通用户设计的,装完依赖跑一条命令就能开始备份。

核心价值:手动备份和它的差别

对比项手动截图/复制GetQzonehistory
覆盖范围挑着存,容易漏说说、转发、留言、好友、图片全量
输出格式零散图片加文字六类 Excel 加网页版 HTML
登录方式反复进空间翻找扫码一次,会话本地缓存复用
中断处理前功尽弃Ctrl+C 保存已有数据,说说部分走本地缓存

手动备份每次都在和遗漏作对,而这个工具把抓取、分类、落盘全部自动化,人只扫一次码——相当于给空间内容加了一份本地保险。

5分钟上手:从零到跑通

准备工作

先把代码拉到本地,并进入项目目录。

git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory

用独立目录隔离项目,后续所有产出都生成在这个文件夹内,方便最后整体备份。

安装依赖

创建虚拟环境并安装项目声明的依赖。

python -m venv myenv .\myenv\Scripts\activate pip install -r requirements.txt

macOS/Linux 把第二行换成source myenv/bin/activate即可。虚拟环境避免依赖版本和系统里其他 Python 程序打架,出问题删掉环境重来就行。

启动使用

运行主程序,等终端打印出二维码。

python main.py

扫个码就行,不用输密码——用手机 QQ 扫一下,登录成功后程序自动开始抓取。

它是怎么跑的:四步流程拆解

1. 扫码登录,会话只存本地

终端打印QQ空间登录二维码,util/LoginUtil.py 轮询扫码状态。成功后会话信息写入 resource/user/ 目录,下次启动会列出已缓存的账号供选择,不用重复扫码。

2. 先数总数,再分批取消息

util/RequestUtil.py 用二分查找确定历史消息的总条数,然后每批取 10 条,逐条解析时间、内容、图片链接和评论。每批之间停几秒,进度条实时可见。

3. 补齐未删除说说,覆盖更早的内容

util/GetAllMomentsUtil.py 分页拉取全部未删除的可见说说,包含 2014 年及更早的内容,并与消息列表去重合并。原始数据以 JSON 缓存在本地,重跑时直接读缓存。

4. 分类落盘:Excel、图片、网页版

保存环节把数据拆成全部、说说、转发、留言、其他、好友六类 Excel,图片下载到 pic 子文件夹,再生成还原空间排版的说说网页版 HTML。所有产出集中在 resource/result/QQ号/ 目录下。

核心能力:四个最实用的点

中断保护:Ctrl+C 不会白跑

长跑任务最怕中途被打断,数据没了就得从头再来。主程序注册了信号处理,手动退出时会把已抓到的数据写入 Excel;说说抓取层另有本地 JSON 缓存,重跑先读缓存。跑一次多一次成果,中断不心疼。

双格式导出:Excel 和 HTML 各管一边

同一份数据既要能分析,也要能直接翻看。Excel 保留时间、内容、图片链接、评论四个结构化字段,适合做统计;网页版 HTML 还原头像、排版和评论区,浏览器打开即看。分析交给 Excel,分享交给 HTML,两边都不用再加工。

图片自动下载:按内容命名,重名加时间戳

截图存图分辨率低,又难按时间找。程序按链接把图片存进 pic 文件夹,文件名取说说内容的前 40 个字,重名时自动追加时间戳。找老照片时凭文字就能猜中文件名。

多账号备份:换号不用重新扫码

一个设备要备多个号时,反复扫码很烦。登录会话按 QQ 号分别缓存,启动时列出已登录账号供选择,各自的结果存进独立文件夹。给家里几个号各备一份,互不串档。

进阶玩法:两个不折腾的用法

改保存位置:改三行配置

这一步是修改输出目录——把 resource/config 下 config.ini 里的三个路径改成想放的位置,重跑生效。

[File] temp = ./resource/temp/ user = ./resource/user/ result = ./resource/result/

不想动配置也完全可行:默认产出就在 resource/result/QQ号/ 里,跑完直接进去拿文件。

数据二次利用:跑个数看看哪年最活跃

这一步是用 pandas 读导出的说说列表,按年份统计条数。

import pandas as pd df = pd.read_excel('resource/result/你的QQ号/你的QQ号_说说列表.xlsx') years = df['时间'].str[:4] print(years.value_counts().sort_index())

不动代码的替代路径:直接打开 Excel,对"时间"列做筛选和排序,就能看出哪一年发帖最多。

真实使用场景

毕业季:把四年动态装进一个文件夹

  • 全量导出说说和图片,按年份整理成纪念册素材
  • HTML 页面直接发给同学,浏览器打开就是一条时间线
  • 好友列表记录了互动过的人,顺手做一份"当年的朋友都在哪"清单

换号或销号前:旧号内容一次带走

  • 全部列表 Excel 保留时间和内容的完整记录
  • 留言列表存下朋友当年在说说下的评论
  • 图片落到本地后,不再受链接失效或平台改版影响

找老照片:不赌平台还能不能加载

  • pic 文件夹按说说内容命名,凭文字关键词就能搜到图
  • 网页版 HTML 中图片自动替换为高清链接,点击可看大图
  • 备份到移动硬盘,账号即使停更,内容也还在

安全与隐私

数据流向很干净:登录会话只存在本地 resource/user/ 目录;抓取请求在本地机器和QQ空间服务器之间直连;解析出的内容写入本地 Excel 和图片文件夹,全程不经过任何第三方服务器。

几条可以自己做的操作:

  1. 备份完成后,resource/user/ 里的登录缓存文件可以删掉
  2. result 文件夹是敏感的个人数据,别放进团队共享盘
  3. 项目有更新时保持同步,跟新版走

项目是开源的,任何一个请求和每一处落盘逻辑,都可以逐行审查。

常见问题

Q1:全量备份要多久?按每 10 条一批、批间停顿来算,条数越多越久。几千条消息的账号一般在小时级别,全程有进度条。

Q2:占多少磁盘?文字部分很小,大头是图片。上百张图大约几十 MB,具体看图片数量和质量。

Q3:断网或误关了程序怎么办?Ctrl+C 会把已抓到的数据保存成 Excel;说说数据有本地 JSON 缓存,重跑先读缓存,不用全量重抓。

Q4:可以备多个QQ号吗?可以。登录按 QQ 号缓存,启动时列出账号任选,结果各自独立成文件夹。

Q5:报"zbar 共享库找不到"?程序会按系统提示安装方式(如 Linux 执行sudo dnf install -y zbar),装完重启程序即可。

Q6:导出的数据能二次利用吗?六个 Excel 可直接用 Excel 或 pandas 做分析;HTML 网页可直接分享浏览。

三步开始备份

git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory && pip install -r requirements.txt python main.py

备份完成后的三件事:

  • result 文件夹至少存两份,移动硬盘加个人网盘各一份
  • 每半年左右重跑一次,把新发的说说补进来
  • 用 Excel 数据做时间线纪念册或年度统计图,数据不止一次用途

数据在自己手里,才算真的留住了。

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

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

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

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

立即咨询