QQ空间说说去哪儿了?用 GetQzonehistory 把历史发帖全部导出来
发布时间:2026/9/20 10:49:47 作者:尧图编辑部 阅读量:1,286

QQ空间说说去哪儿了用 GetQzonehistory 把历史发帖全部导出来【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory几年前在 QQ 空间发的说说现在想翻一翻只能一页页往前刷老图片还经常打不开。想留个底靠手动截图显然不现实。GetQzonehistory 是一个开源工具把你空间里的历史说说正文、图片、评论批量导出到自己电脑上扫码登录、一条命令跑完产出是一组 Excel、一个图片目录和一份能直接打开回看的网页时间线。这个工具适不适合你适合你如果……不适合你如果……想把本人空间的历史说说、图片、评论批量存下来想抓取别人的空间或需要仅自己可见的说说终端里敲几条命令没问题只想要全图形界面、全程点鼠标能接受按数据量跑半小时到几小时要求几分钟出完整结果三步跑起来从克隆到扫码登录环境要求很低对着这张表确认就行项目最低推荐系统Windows 10 / macOS / Linux桌面环境网络正常Python3.73.9系统依赖zbar 库识别二维码用Linux/Mac 需装装环境时一起装好磁盘几百 MB 空闲空间用了多年的留 2 GB下面这段命令一次性完成克隆项目、建隔离虚拟环境、装依赖git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory python -m venv myenv # 建虚拟环境避免弄乱系统 Python source myenv/bin/activate # Windows 用户改为 .\myenv\Scripts\activate pip install -r requirements.txt首次运行有一个关键交互——扫码登录。执行下面的命令后终端里会直接打印出二维码python main.py用手机 QQ 扫一下终端提示登录成功后就开始抓数据了。登录状态会存到resource/user/目录第二次运行时只需在已登录用户列表里选序号就能复用输入 0 才重新扫码。提示首次运行卡住时先看两处——终端有没有打印登录二维码获取成功没有就是网络问题登录状态是不是反复跳到二维码已失效重新跑一遍命令拿新码别拖太久。导出结果长什么样多份 Excel 时间线 图片我只想导出发帖记录主流程分三步走先估算互动消息的总条数再每 10 条一批拉取消息列表最后单独拉一遍未删除说说列表这条通道能覆盖 2014 年之前的内容是消息列表够不到的部分。全部完成后结果写到resource/result/你的QQ号/下resource/result/12345678/ ├── 12345678_全部列表.xlsx # 全部互动消息时间/内容/图片链接/评论 ├── 12345678_说说列表.xlsx # 你自己发的说说 ├── 12345678_转发列表.xlsx # 你的转发 ├── 12345678_留言列表.xlsx # 别人给你的留言 ├── 12345678_好友列表.xlsx # 互动涉及的好友昵称/QQ/空间主页 ├── 12345678_其他列表.xlsx # 其他涉及你的内容 └── 12345678_说说网页版.html # 网页版时间线每份表的列都很直白时间、内容、图片链接、评论。用 Excel 打开就能按年份筛选、按关键词搜是真正的结构化数据。我想批量把图片都拿下来保存结果的同时程序会把每条说说里的图片全部下载到pic/文件夹文件名取说说内容截断到 40 字符重名的自动加时间戳。十年的说说跑完就是一个现成的个人相册。我想要一份能打开回看的时间线说说网页版.html把你的说说和转发合并、按时间倒序排列连评论和高清配图一起渲染好浏览器打开就能翻。这一步由main.py里的render_html完成核心抓取逻辑在util/RequestUtil.py和util/GetAllMomentsUtil.py想深入看就从这两个文件入手。我想把说说带进笔记软件项目自带第二个入口只做拉取未删除说说这一步并把结果整理成 Markdown、图片存到同一目录python fetch_all_message.py产出在resource/fetch-all/下一份所有可见说说.md每条说说不落小节带图片引用、转发的原文和评论回复。这个文件夹丢进 Obsidian 或任何静态博客目录就能用。⚡ 跑多久、怎么让它跑得稳这个项目没有暴露性能配置——请求节奏写死在代码里每批 10 条约休息 8 秒所以调优重点在网络环境和下面三个开关改保存位置resource/config/config.ini的[File]段里有temp、user、result三个路径。改之前结果默认落在项目目录里C 盘容易被撑满改之后把result指到空间大的数据盘其余不用动。复用登录态改之前每次运行都要重新扫码、重新请求 cookie改之后第二次运行直接在已登录用户列表里选序号省掉整个登录环节。复用说说缓存未删除说说数据首次拉取后会写进resource/fetch-all/下的 JSON再次运行直接读缓存。想强制重新拉取删掉对应缓存文件再跑即可。耗时大致参考含图片下载因网络而异你的说说规模大致耗时主要花在1000 条以内半小时左右统计总条数这一步就要三四分钟1000–3000 条1–2 小时图片是逐张串行下载3000 条以上2–3 小时起图片越多下载越久两条实操建议用有线网络避开晚 8–10 点的高峰跑的过程中看起来卡住别强杀进程按一次CtrlC程序会捕获中断并把已抓到的数据保存下来白干重来是最亏的。 踩坑速查症状 → 原因 → 解法怎么都装不上启动报无法找到 zbar 共享库原因pyzbar需要系统级 zbarpip 装不了。 解法Linux 用发行版包管理器装如sudo dnf install zbarmacOS 执行brew install zbar并按屏幕提示操作。pip 安装依赖超时原因网络访问 PyPI 不稳。 解法换国内镜像pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt。跑了一半卡死了正在获取消息列表数量走了三四分钟原因程序在二分查找消息总条数每轮一次请求加休息。 解法不是卡死正常等待统计完会打印总条数。抓了一半想停原因手动中断。 解法按一次CtrlC程序自动保存已有数据后退出下次运行登录态还能复用。结果看起来不对仅自己可见的说说没导出原因工具走的是消息列表和可见说说两个通道私密内容本就不在其中。 解法这是数据边界不是 bug接受即可。第二次运行新说说没更新原因未删除说说部分读了本地缓存不会重新拉取。 解法删掉resource/fetch-all/下对应的 JSON 缓存再跑。权限与安全二维码没扫完就失效原因二维码有有效期。 解法重新运行命令换新码终端保持在可见位置。cookie 文件是敏感文件原因resource/user/里存的就是登录凭证等同你的空间登录态。 解法不要把项目文件夹整个分享给别人备份到外盘时注意别误传网盘。 玩出花样把备份排进日程最实用的进阶玩法是定时全量备份 异地复制每周跑一次完整流程再把结果拷到外置硬盘或云存储import subprocess, shutil, schedule, time def backup_job(): subprocess.run([python, main.py]) # 跑完整导出 shutil.copytree(resource/result, /backup/qzone, dirs_exist_okTrue) # 复制到外盘或云盘目录 schedule.every().sunday.at(03:00).do(backup_job) while True: schedule.run_pending() time.sleep(60)另一个搭配把fetch_all_message.py产出的 Markdown 导入 Obsidian说说直接变成可全文搜索的笔记所有可见说说.md本身就是一条一节 评论清单的结构零转换成本。想改时间线的样式也不用碰抓取逻辑入口在util/ToolsUtil.py的get_html_template改那里的 CSS 和帖子模板就行。️ 丑话说在前头四条红线只导出自己的空间。工具走单账号扫码登录别想着改造去抓别人的数据导出的数据仅限个人回看和存档不做商业用途不二次分发resource/user/里的登录态文件不分享、不上传公开仓库请求节奏受代码控制不要为了快点跑完去高频轰接口。收尾先存到外置硬盘GetQzonehistory 的价值很简单把只能翻页的说说变成能长期保存、可以搜索的 Excel、图片和网页。别折腾复杂方案先完整跑一次python main.py成功后把resource/result/整个文件夹拷一份到外置硬盘之后每季度再跑一次增量就够用了。延伸阅读README.MD项目说明、目录结构和安装备注util/登录、抓取、解析的源码目录二次开发从这里开始LICENSE许可证条款【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考