GetQzonehistory:QQ空间历史说说导出工具,扫码一次完整归档
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
GetQzonehistory 是一个免费开源的 QQ空间历史说说导出工具。它通过扫码登录获取账号下的全部历史说说、留言和好友互动,并整理成 Excel 与网页版存档。运行一次,你就能看到从最早一条到最新一条的完整记录,图片也一并保存在本地。
适用场景
- 长期使用 QQ 账号,担心早期说说被删除或平台不再展示,需要做一次完整备份的人
- 需要把说说的文字、图片链接、评论数据整理成 Excel,便于归档和检索的人
- 希望以接近空间原貌的网页版浏览自己历史时间线的人
核心能力一览
全量历史消息抓取:通过消息列表接口拉取账号的全部历史互动消息,能取到空间首页已看不到的早期说说。可见说说补全:自动分页获取空间当前所有未删除说说,与消息列表合并,减少数据缺口。智能去重合并:自动识别两个数据源中的重复内容,每条说说只保留一份,util/ToolsUtil.py 提供去重判断逻辑。多格式导出:一次运行产出全部列表、说说列表、转发列表、留言列表、好友列表共 5 个 Excel 文件,外加一个可视化网页版。图片自动下载:说说中的所有图片自动下载到本地pic/目录,重名和非法字符问题已自动处理。
安装与首次运行
环境要求:Python 3.7 及以上版本,推荐在虚拟环境中运行。
# 克隆项目 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- ⚠️ 如果 Linux/macOS 下启动时报
zbar相关错误,先安装 zbar 库再重新运行,程序会提示具体安装命令。 - 💡 抓取中断后直接重新运行即可,程序在退出前会保存已获取的数据。
运行后你会看到:扫码登录成功后,终端以"10条"为单位显示进度条;每批之间有 3 秒间隔,防止请求过快。全部完成后,程序会自动打开结果文件夹,并打印各列表的总条数、最早说说时间和图片数量。
运行结果说明
结果保存在resource/result/你的QQ号/下,结构如下:
resource/result/你的QQ号/ ├── 你的QQ号_全部列表.xlsx # 全部历史消息记录 ├── 你的QQ号_说说列表.xlsx # 你发布的说说 ├── 你的QQ号_转发列表.xlsx # 转发记录 ├── 你的QQ号_留言列表.xlsx # 好友给你的留言 ├── 你的QQ号_好友列表.xlsx # 互动好友信息 ├── 你的QQ号_说说网页版.html # 可视化网页版 └── pic/ # 下载的说说图片关键产出物:
- 全部列表.xlsx:所有历史消息的完整记录,是最全的一份数据
- 说说列表.xlsx / 转发列表.xlsx / 留言列表.xlsx:按类型拆分,便于单独整理
- 好友列表.xlsx:昵称、QQ 号、空间主页链接
- 说说网页版.html:按时间倒序还原的可视化页面,QQ 表情已还原
- pic/:所有说说的图片本地副本
数据字段样例(Excel 各列表通用前 4 列):
| 时间 | 内容 | 图片链接 | 评论 |
|---|---|---|---|
| 2016年8月15日 20:45:10 | 毕业快乐 | http://.../xxx.jpg | [时间, 昵称, 内容] |
| 2015年3月20日 14:30:22 | 今天天气真好 | http://.../yyy.jpg | [] |
工作原理(简述)
数据流转路径:扫码登录获取登录凭证 → 按每批 10 条分页拉取历史消息列表 → 再分页抓取空间所有未删除的可见说说 → 两个数据源去重合并、按类型分类 → 写入 Excel、下载图片、渲染 HTML 网页版。
核心模块职责:
| 模块 | 职责 | 关键说明 |
|---|---|---|
| util/LoginUtil.py | 扫码登录 | 生成并解析二维码获取登录凭证,不涉及密码 |
| util/RequestUtil.py | 网络请求 | 封装消息列表接口,分页批量获取 |
| util/GetAllMomentsUtil.py | 可见说说获取 | 分页抓取所有未删除说说,结果本地缓存 |
| util/ToolsUtil.py | 数据处理 | HTML 清洗、编码识别、重复内容判断 |
| main.py | 主程序编排 | 串联全流程,输出 Excel 与 HTML |
所有数据都在本地处理和保存,不经过第三方服务器;登录采用官方扫码方式,不传输账号密码;代码完全开源,可自行审计。
进阶玩法
- 如果你想定期备份:把
python main.py加入系统计划任务(Windows 任务计划 / cron),每季度或半年执行一次,增量数据会自动追加到结果目录。 - 如果你想分析自己的发布习惯:导出的 Excel 可直接用 pandas 打开,按年份统计发布条数:
import pandas as pd df = pd.read_excel("resource/result/123456/123456_说说列表.xlsx") df["年份"] = df["时间"].str[:4] print(df.groupby("年份").size()) # 每年的说说数量- 如果你想做个性化纪念页:打开导出的 HTML 文件修改 CSS 配色和版式,再导出为 PDF 即可得到一份离线纪念册。
性能提示:抓取耗时与消息总量成正比(每 10 条间隔 3 秒),数千条消息预计需要几十分钟;图片逐张下载,建议预留 1GB 以上磁盘空间。
常见问题速查
| 现象 | 可能原因 | 解决办法 |
|---|---|---|
| 启动报 zbar 找不到 | 系统缺 zbar 库 | 按提示安装 zbar 后重跑 |
| 抓取中断 | 网络或登录态异常 | 重新运行,数据自动保存 |
| 个别老说说缺失 | 仅自己可见且不在消息列表 | 平台限制,建议定期备份 |
| 导出耗时很长 | 消息和图片数量多 | 等待进度条走完即可 |
GetQzonehistory 把"备份 QQ空间历史说说"压缩成了扫码、等待、查看三步,一次运行就能得到完整的本地存档。你的第一步:克隆项目、安装依赖,然后运行python main.py完成扫码,剩下的交给进度条。项目开源在 gitcode 平台,搜索 GetQzonehistory 即可获取完整文档与更新记录。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考