GetQzonehistory 完整指南:备份QQ空间历史说说并导出到本地
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
如果你从没用过备份工具,QQ空间的历史动态只能通过翻主页一条条往后找,数量多时几乎不可能看完。GetQzonehistory 是一个免费的QQ空间历史说说备份工具:它通过模拟扫码登录QQ空间,分页抓取账号的历史消息列表和未删除说说,最终导出为 Excel 表格、网页版页面和本地图片,全部保存在自己的电脑上。
先看效果:运行成功后得到的文件
程序跑完后,会在resource/result/<你的QQ号>/目录下生成以下内容:
| 文件 | 内容 |
|---|---|
<QQ号>_全部列表.xlsx | 全部说说与互动消息的合并列表(时间、内容、图片链接、评论) |
<QQ号>_说说列表.xlsx | 自己发布的原创说说 |
<QQ号>_转发列表.xlsx | 自己转发的内容 |
<QQ号>_留言列表.xlsx | 自己留下的留言 |
<QQ号>_其他列表.xlsx | 好友动态等其余互动内容 |
<QQ号>_好友列表.xlsx | 好友昵称、QQ号、空间主页地址 |
<QQ号>_说说网页版.html | 还原说说信息流样式的网页,双击即可用浏览器打开 |
pic/子目录 | 说说中涉及的全部图片,逐张下载为本地文件 |
Excel 和本地图片完全离线可用。网页版的文字和版式是本地内容,但其中的头像与图片仍引用QQ空间服务器,加载它们需要联网;完全离线查看请用 Excel 和pic/目录。
快速开始:安装步骤与运行命令
- 获取代码并进入项目目录:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory- 创建名为 myenv 的虚拟环境,把依赖隔离在独立环境里,避免污染本机 Python:
python -m venv myenv- 激活虚拟环境(Windows 用
.\myenv\Scripts\activate,macOS/Linux 用source myenv/bin/activate),然后安装依赖并启动主程序:
pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt python main.pypip install一行安装项目声明的全部依赖(pandas、requests、qrcode 等),python main.py启动后直接进入扫码登录环节。
完整流程详解:扫码登录到核对导出
第一步:扫码登录
程序启动后会在终端打印"登录二维码获取成功",并输出一串字符形态的二维码,同时每隔 3 秒轮询一次扫码状态。用手机QQ扫码后,终端先显示"二维码认证中",通过后显示"登录成功",随后打印"用户<QQ号>,<昵称>登录成功"。看到这一行即登录成功。若终端字符码无法辨认,可直接打开程序生成的resource/temp/QR.png图片扫码,效果相同。
第二步:等待抓取
登录成功后程序先用二分定位估算历史消息总量,此阶段进度条显示"正在获取消息列表数量...",耗时几分钟属正常现象。随后进入分批抓取,进度条以"10条"为单位前进,每批之间有内置的限速停顿。成功标志是阶段结束后自动开始获取"所有未删除说说"(该数据源覆盖 2014 年之前的可见内容)。
第三步:生成结果
程序把两个来源的数据合并去重后分类写入 6 个 Excel 文件,生成网页版 HTML,并把图片逐张下载到pic/目录。终端会打印"导出成功,请查看 resource/result/<QQ号> 文件夹内容",并输出总消息数、最早说说时间、好友数、图片数等统计。看到这段统计即本次备份完成。
第四步:核对导出
打开 Excel 检查时间、内容、图片链接、评论四列是否齐全,抽几条早期说说核对时间;再比对pic/目录里的图片数与终端输出的"图片列表共有 X 张图片"是否一致。Windows 下程序会自动打开结果文件夹,其他系统需手动进入该目录查看。
实用细节:容易踩的坑
- 二维码扫不出:终端字符码受字体影响可能变形,改扫
resource/temp/QR.png图片即可。 - 登录态复用:登录后的凭据保存在
resource/user/下。再次运行时终端会列出"已登录用户列表",输入序号直接复用;输入 0 则重新扫码。 - 抓取看起来卡住:每批之间有 3 秒停顿、每次请求还有 5 秒限速,历史越久总时长越长,中途不要关窗口。
- 中断不等于白跑:按 Ctrl+C 退出时,程序会把已抓取到的数据先保存再退出,下次重新运行继续即可。
- 想要更早或更全的记录:
main.py是"消息列表 + 可见说说"双来源合并;若只需要全部未删除可见说说的 Markdown 版本(含 2014 年前内容),可单独运行 fetch_all_message.py,产物是resource/fetch-all/下的所有可见说说.md和图片。已删除或仅自己可见的说说,任何入口都取不到。
常见问题
问:需要输入QQ空间密码吗?不需要。全程使用手机QQ扫码登录,密码不经过程序。
问:启动时提示"无法找到 zbar 共享库"怎么办?这是 pyzbar 依赖的 zbar 组件缺失。Linux 下执行sudo dnf install -y zbar或sudo apt install zbar后重试;macOS 可用brew install zbar。
问:导出范围包含已删除的说说吗?不包含。只有未删除的内容会出现在结果中,删除过的和仅自己可见的说说不导出。
问:网页版 HTML 断网后还能看吗?文字和版式可以,头像与图片来自QQ空间服务器,断网时显示不出图。离线浏览以 Excel 加pic/目录为准。
问:如何备份另一个QQ号?在"已登录用户列表"中选择 0 重新扫码,结果会按QQ号分目录保存,互不覆盖。
写在最后
GetQzonehistory 的整个流程是"一次扫码、等待跑完",数据只在本地生成和存储,适合第一次做QQ空间数据备份的用户。后续需要补充备份时,直接重新运行即可,已登录状态下无需再扫码:
python main.py
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考