GetQzonehistory:一次运行导出你的QQ空间历史说说备份
GetQzonehistory一次运行导出你的QQ空间历史说说备份【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistoryGetQzonehistory 是一款免费开源的 QQ 空间历史说说导出工具。它通过模拟扫码登录读取空间互动消息列表和可见说说产出多份 Excel 表格、一个网页版页面和图片文件夹全部保存在本机。 典型使用场景历史说说备份适合做什么用空间多年、准备停用 QQ 号或担心账号异常想先做一次完整留存的人运行一次 GetQzonehistory得到按时间排序的全量互动记录Excel 与网页版以及全部说说图片存入自己控制的存储介质。想回顾或整理旧内容的人比如按年份编一本年度合集、整理一份个人时间线用全部列表表格按时间列筛选网页版则按空间原有版式渲染说说、头像、评论与高清图可直接打开浏览。想自己动手写空间数据处理工具的开发人员项目按职责拆分成独立模块基于登录与请求两个模块可以把导出环节换成自己的报表格式。️ 从准备到完整运行安装命令与产出文件说明跑之前需要 Python 3 环境。二维码解码依赖 zbar 共享库Linux 需先用包管理器安装如sudo dnf install zbarmacOS 运行时程序会交互提示通过 Homebrew 安装。项目的 release 页另提供打包好的单文件无 Python 环境也可直接执行。git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory python -m venv myenv pip install -r requirements.txt随后激活虚拟环境Windows 用.\myenv\Scripts\activatemacOS/Linux 用source myenv/bin/activate。跑一次只需执行python main.py终端会显示登录二维码全程唯一需要你动手的就是用手机 QQ 扫码并确认若之前已登录过账号从列表中选择即可免扫码。登录后其余流程自动完成先估算消息列表总量再分批拉取每批之间有固定停顿数据量大时耗时较长属正常现象。跑完之后程序会自动打开结果目录导出文件位于resource/result/{QQ号}/文件用途{QQ号}_全部列表.xlsx两个数据源合并后的完整记录含时间、内容、图片链接、评论列{QQ号}_说说列表.xlsx本人原创说说按内容类型拆分{QQ号}_转发列表.xlsx本人做出的转发记录{QQ号}_留言列表.xlsx本人在他人说说下留下的评论{QQ号}_其他列表.xlsx来自他人的互动内容他人说说、转发等{QQ号}_好友列表.xlsx消息列表中出现的昵称、QQ 号、空间主页{QQ号}_说说网页版.html按空间版式渲染说说与转发QQ 表情还原为图片pic/说说中的全部图片本地下载并按内容命名fetch_all_message.py是独立脚本运行后可把所有可见未删除说说整理成带转发原文与评论的 Markdown 文件缓存于resource/fetch-all/。 它是怎么拿到全量数据的双数据源与去重逻辑数据源有两个。主数据来自空间互动消息列表接口每次 10 条分批拉取启动前用二分法估算消息总量避免逐段试探辅助来源是空间可见说说接口每页 30 条响应用 chardet 自动探测编码防止中文乱码。合并靠内容去重。以说说文本比对只有消息列表中不存在的可见说说才追加进结果两个来源不重复评论随可见说说一并解析好友信息在解析消息列表时顺带收集。中断与缓存兜底。程序收到中断信号如 CtrlC时会立即把内存中已抓到的数据写入 Excel不丢进度可见说说全量数据还会以 JSON 缓存在resource/fetch-all/下次运行直接复用、不再重复抓取。若要改导出列或网页版样式直接修改main.py的save_data()与 工具模块 中的 HTML 模板即可抓取逻辑无需改动。️ 代码地图目录结构与二次开发入口GetQzonehistory/ ├── resource/ # 配置、缓存、登录态、导出结果自动创建 ├── util/ # 配置、可见说说、登录、请求、工具五个模块 ├── main.py # 主入口合并数据并导出 ├── fetch_all_message.py # 独立脚本可见说说导出 Markdown └── requirements.txt # 依赖列表登录模块生成二维码、轮询扫码状态、计算请求参数登录态处理方式要调整从这里入手。请求模块二分估算消息总量、分页拉取互动消息是调整抓取节奏的唯一位置。可见说说模块分页抓取、解析图片与评论、落盘 JSON 缓存。main.py承载主流程与导出列定义fetch_all_message.py作为独立入口快速产出 Markdown 版本。⚖️ 能力边界与常见疑问导出范围与隐私先说清楚边界只能获取出现在空间互动消息列表里的说说手动删除或仅自己可见的内容不在列表中无法拿到。需要 QQ 账号处于正常状态每次运行扫码登录或复用本地登录态。抓取节奏固定、批次间有停顿耗时取决于数据总量建议在稳定网络下运行。高频疑问需要输密码吗会泄露吗不需要。全程为手机 QQ 扫码登录程序不接触密码得到的 Cookie 只写入本机resource/user/目录。数据存在哪全部在本机结果在resource/result/{QQ号}/缓存在resource/fetch-all/程序不会把你抓取的数据上传到任何服务器。支持哪些系统Windows、macOS、Linux 均可运行需安装 zbar 库macOS 由程序交互引导完成后三个平台都能自动打开结果目录。维护建议压缩成四条每次导出前保留旧结果新结果核对完整后再覆盖归档。导出结果至少放两个位置如云盘与移动硬盘。导出内容含好友昵称、QQ 号与互动信息妥善保管勿公开发布。resource/user/目录内含登录态不要外传。如果你的目标只是给自己存档把项目跑通一次、把导出结果收好就足够了列结构、网页样式与整理方式都可以按上面的代码地图自行调整。免责声明本工具仅供学习和技术研究使用使用时请遵守相关法律法规尊重 QQ 平台及第三方的隐私与版权。【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考