QQ空间历史说说导出指南:3 条命令,把翻不到的旧动态全部找回
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
想翻几年前的说说,QQ 空间页面却只能往前翻几屏,再早的记录像被抹掉了一样。GetQzonehistory是一款免费开源的 Python 工具:扫码登录,从空间的历史消息列表逐批拉取数据,把说说的文字、配图和评论整理成Excel表格与网页版。这是一套完整可跑的 QQ空间历史说说导出方案,凭证和数据全程留在本地。
🚀 安装与启动:GetQzonehistory 运行命令
会敲几条命令就能用。先拿代码、建隔离环境:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory python -m venv myenv再装依赖、跑起来,一次完整的 QQ空间历史说说导出就是这几行:
# Windows 激活虚拟环境:myenv\Scripts\activate # macOS / Linux 激活虚拟环境:source myenv/bin/activate pip install -r requirements.txt python main.py运行python main.py后,终端会打印一个登录二维码。用手机 QQ 扫码确认,然后就是等进度条。仓库 release 页也提供了打包好的单文件,不想装依赖可以直接执行。
核心依赖及各自分工:
| 依赖 | 在你的电脑上负责什么 |
|---|---|
| requests | 发所有网络请求:登录、拉消息、下配图 |
| beautifulsoup4 | 解析消息列表返回的页面结构 |
| pandas+openpyxl | 整理数据、写出 6 个 Excel 文件 |
| tqdm | 终端里的实时进度条 |
| Pillow+qrcode | 生成并重新排版登录二维码 |
| pyzbar | 解析二维码内容,需要系统装有 zbar 库 |
| fake-useragent | 让请求携带真实浏览器身份,更像人工操作 |
| chardet | 自动识别页面编码,避免中文乱码 |
⚙️ 工作原理:从扫码到成品的 4 个环节
整个流程不神秘,拆成 4 步看得更清楚:
- 扫码换凭证。LoginUtil.py 生成二维码并在终端渲染出来,你扫码确认后,cookie 被存进
resource/user/。全程不碰账号密码,下次运行还能直接复用旧账号。 - 先探深,再拉数。RequestUtil.py 先二分探测历史消息列表总共有多少条,随后 main.py 从最新一端开始每 10 条一批往前翻,批与批之间自动歇上好几秒,慢慢爬到底,不猛刷服务器。
- 可见说说兜底。GetAllMomentsUtil.py 另抓空间首页还能看到的全部说说(含 2014 年以前的内容),与消息列表按内容去重后合并,两边都不漏。
- 清洗与落地。ToolsUtil.py 处理编码识别、时间格式化和去重,然后写出 Excel、下载配图、渲染网页版。等不及时按Ctrl+C,程序会先把已抓到的数据落盘再退出。
如果还想要 Markdown 格式的备份,仓库里备了第二个入口 fetch_all_message.py:它只抓未删除的可见说说,连同评论一起写成所有可见说说.md,存进resource/fetch-all/目录。
📁 导出结果说明:你的 QQ 号文件夹里有什么
跑完后程序会自动打开结果文件夹resource/result/你的QQ号/,并在终端打印总条数、最早一条说说的时间。这些文件就是本次 QQ空间历史说说导出的全部成果:
| 文件 | 里面装了什么 |
|---|---|
| 全部列表.xlsx | 历史消息中的全部记录,未分类 |
| 说说列表.xlsx | 你本人发布的说说 |
| 转发列表.xlsx | 你转发过的内容 |
| 留言列表.xlsx | 你发出的留言 |
| 其他列表.xlsx | 好友的动态和互动 |
| 好友列表.xlsx | 出现过的好友昵称、QQ、主页 |
| 说说网页版.html | 还原空间版式的页面,含图片与评论 |
| pic/ | 按内容自动命名下载的配图 |
以说说列表为例,每行四个字段,方便直接筛选:
| 时间 | 内容 | 图片链接 | 评论 |
|---|---|---|---|
| 2016年8月11日 21:07:45 | 加班到半夜的程序员 | http://... | 2 条评论 |
❓ 边界与坑:跑之前先看的 3 个问题
Q1:终端打印的二维码全是字符,看不清怎么扫?程序把二维码以字符画形式显示在终端,方便无图形环境;同一时刻它也把原始图片存到了resource/temp/QR.png。直接打开这张 png 扫码即可,内容完全一样。
Q2:我注册了好几个 QQ,能共用一套环境吗?可以。每个账号的 cookie 以 QQ 号命名、单独存成文件放在resource/user/下。下次运行时程序会列出已登录账号供你选择,输入 0 则重新扫码新账号。
Q3:大概要跑多久?中途能断电吗?取决于记录量。先二分探测总条数,再每 10 条一批、每批固定停顿,上万条记录大概要两个多小时,建议夜里挂着跑、别动电脑。实在要停,按 Ctrl+C 会先保存已抓取的部分再退出,不至于前功尽弃。
那些以为找不到的动态,其实一直躺在历史消息列表的深处。扫码一次、挂机一晚,多年的文字、配图和评论就都收进了本地文件夹,QQ空间历史说说从此不靠平台页面的心情。
使用声明:本项目以 GPL v3 协议开源,仅供个人学习与技术研究。请遵守腾讯相关服务条款,尊重账号内涉及的所有隐私信息,勿将导出数据用于商业用途或任何侵权场景。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考