4 步导出 QQ 空间全部历史说说,老动态不再丢
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
翻到 2014 年那条生日说说,配图全灰了。GetQzonehistory 跑一遍,它把你 QQ 空间十年的历史说说连图片、评论整包导成 Excel,你只管扫码。
一句话:把 QQ 空间历史说说整包搬回家
GetQzonehistory 是一个 Python 小工具:它模拟扫码登录 QQ 空间,把可见的全部互动消息和未删除的说说抓下来,分类存成 Excel,再渲染一个离线网页。它为空间开了十年以上、想留一份完整数字档案的普通用户解决"旧说说看不全、存不走"的问题,全程不需要你会写代码。
从 clone 到出文件的 5 个步骤
- 克隆仓库:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory - 进入目录:
cd GetQzonehistory - 建一个干净的虚拟环境(Windows 的激活命令换成
.\myenv\Scripts\activate):python -m venv myenv && source myenv/bin/activate - 安装依赖:
pip install -r requirements.txt - 运行,终端会打印一个字符画二维码,用手机 QQ 扫:
python main.py
扫码成功后先别关窗口:它会花几分钟探测你的消息总数,然后每 10 条抓一批、每批停 8 秒,一千条数据大约十五分钟。跑完后它在resource/result/你的QQ号/下落一个文件夹,Windows 上会自动帮你打开,其他系统手动进去看一眼。
📦 导出后你拿到哪些文件
都在resource/result/你的QQ号/下,文件名以你的 QQ 号开头(下表用"QQ号"代替):
| 文件 | 干嘛用的 |
|---|---|
| QQ号_全部列表.xlsx | 全部互动消息,一行一条,带时间、内容、图片链接、评论 |
| QQ号_说说列表.xlsx | 只挑你自己写的原创说说,做回忆录的主原料 |
| QQ号_转发列表.xlsx | 你转发过的全部内容 |
| QQ号_留言列表.xlsx | 朋友在你说说下面留下的评论 |
| QQ号_其他列表.xlsx | 上面几类之外的互动消息 |
| QQ号_好友列表.xlsx | 互动过的好友昵称、QQ 号、空间主页 |
| QQ号_说说网页版.html | 还原 QQ 空间观感的离线网页,双击就能翻 |
| pic/ | 说说配图自动下载,文件名取自说说内容 |
让数据活起来的 3 个玩法
- 年度统计:打开
QQ号_全部列表.xlsx,加一列从"时间"里提取年份,用数据透视表按年统计,哪年发得最勤、哪个月是活跃高峰,几分钟出结果。 - 离线时间线:
QQ号_说说网页版.html按时间倒序还原了原空间的样子,QQ 表情和评论都保留着,把它和pic/一起拷走,就是一个永远打得开的私有空间。 - 互动圈分析:
QQ号_好友列表.xlsx里每个好友都带 QQ 号和空间主页,再回到全部列表数一下评论列里谁的昵称出现最多,你的核心圈子就出来了。
🧯 踩坑速查:5 个高频问题
全新克隆跑起来直接报 NoSectionError
现象:python main.py第一秒就崩,错误信息里提到 'File' section。
原因:仓库里没带resource/config/config.ini,而所有文件保存路径全靠它来读。
解法:手动补上这个 ini 文件,把 temp、user、result 三个相对路径写进去(字段含义见 ConfigUtil.py),再重新运行。
启动就提示 zbar 找不到
现象:终端打印"无法找到 zbar 共享库",程序直接退出。
原因:pyzbar 依赖系统级的 zbar 动态库,pip 装不了这一层。
解法:Debian/Ubuntu 跑sudo apt install libzbar0,Fedora 跑sudo dnf install zbar,macOS 跑brew install zbar,装完重跑。
二维码刚出来就失效
现象:还没扫完,终端就打印"二维码已失效"。
原因:登录二维码有效期很短,轮询的间隙里它就过期了。
解法:重新运行python main.py生成新码,一分钟内扫掉。
导到一半想停
现象:出门前想中断,又担心抓到一半的数据全丢。
原因:Excel 是最后统一落盘的,直接关窗口可能什么都留不下。
解法:按Ctrl+C,它捕获中断后会把已抓到的部分自动存进 result 目录。
第二次运行还要扫码
现象:明明上次已经登过,这次又弹出二维码。
原因:登录态缓存在resource/user/目录,运行时它先列出已登录用户让你选,跳过选择才会重新扫码。
解法:在"请选择要登录的用户序号"处输入已有账号的序号,输入 0 才是重新登录。
架构一句话:登录、分页、分类三级流水线
整条链路就是一条"登录 → 分页抓 → 分类落盘"的流水线:LoginUtil.py 生成登录二维码并把 cookies 缓存到本地供复用,RequestUtil.py 先二分探测消息总数、再每 10 条一批翻历史消息列表接口,GetAllMomentsUtil.py 负责补抓未删除的说说(2014 年之前的老内容走这条线)并与消息列表去重合并。main.py 则把合并结果分成说说、转发、留言、其他四类,顺手把图片下下来、渲染出离线网页。
现在就去导
十年前的那条说说、那批配图、那些评论,跑完一次就都躺在resource/result/里了。运行python main.py,扫一次码,然后去翻你的存档。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考