把十年的QQ空间说说装进Excel,GetQzonehistory一个工具就够了
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
凌晨两点,我对着QQ空间一页页往前翻,想找回2012年军训合影那条说说。翻到第38页,页面卡住了,刷新后弹出"操作过于频繁"。那一刻我才意识到:这些记忆放在别人的服务器上,我连完整翻一遍的权限都没有。GetQzonehistory正是为解决这个痛点而生的开源工具——它通过扫码登录,把账号下所有历史说说、转发、留言、好友信息一次性抓取到本地,导出成Excel和网页文件。适用人群很广:想备份个人QQ空间数据的普通用户、想做回忆整理的学生党、需要批量导出素材的创作者,都不需要任何编程基础。
手动翻页的痛,用过的人都懂
先说说我之前的笨办法。QQ空间网页版没有全量导出功能,想看老说说只能一页一页翻。几百上千条动态,越往后页面加载越慢,偶尔还会撞上风控提示。翻完一遍,眼睛酸,时间没了,想留存的配图还得一张张右键另存为。
这还不是最糟的。说说下面的评论、转发关系、留言板记录,网页上根本没法批量整理。我一度以为这些数据这辈子就拿不出来了。
它是怎么做到的:一条自动流水线
GetQzonehistory的思路很直接:既然网页版能看,那就模拟一次真实的网页登录,批量读取历史消息列表,再清洗、分类、落盘。流程大致四步:
- 生成QQ登录二维码,手机扫码完成授权
- 从消息列表接口分批拉取全部动态
- 用BeautifulSoup解析页面,提取时间、内容、图片、评论
- 分类写入Excel,并把配图下载到本地
登录状态会被缓存,下次运行无需重新扫码。程序每拉取10条数据会主动暂停3秒,这是刻意设计的限速,防止触发平台的频率限制。
动手之前,先备好三样东西
- Python 3.7及以上:项目基于Python编写,终端执行
python --version即可确认版本 - Git:用来拉取仓库代码
- 稳定的网络:全程需要联网,网络差会导致二维码刷新失败或导出中断
获取代码很简单:
git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory cd GetQzonehistory我强烈建议创建虚拟环境,尤其当电脑上还跑着其他Python项目时,能避免依赖互相打架:
python -m venv myenv # Windows 激活 myenv\Scripts\activate # macOS/Linux 激活 source myenv/bin/activate第一次运行:扫码、等待、收文件
安装依赖并启动:
pip install -r requirements.txt python main.py终端会打印出一张ASCII码二维码,用手机QQ扫一下并确认登录即可。之后程序全自动干活:拉数据、下载图片、写表格。几百条说说的账号,几分钟内就能跑完;动态上万条的大号,因为每10条要停3秒,耐心等一等就好。
结束后程序会自动打开结果文件夹,所有内容存放在resource/result/你的QQ号/目录下。
导出的文件里到底有什么
一次完整运行,你会得到这样一组文件:
- 全部列表.xlsx:所有动态的汇总,含时间、内容、图片链接、评论
- 说说列表.xlsx:你自己发布的说说
- 转发列表.xlsx:转发的内容
- 留言列表.xlsx:留言板记录
- 好友列表.xlsx:出现过的好友昵称、QQ号和空间主页
- xxx_说说网页版.html:按时间倒序还原的网页版说说,打开就像在逛QQ空间
- pic/ 文件夹:自动下载的说说配图
Excel文件用WPS、LibreOffice、Excel都能直接打开,方便按年份、主题筛选整理。HTML网页版是意外之喜,还原度很高,适合存成书签随时翻看。
如果你连2014年之前的老说说也想完整收走,可以再跑一个补充脚本,它会把所有可见的未删除说说写成Markdown文档,并把配图以高清原图保存:
python fetch_all_message.py三个值得一试的进阶用法
1. 二次运行免登录。登录信息缓存在resource/user/下,再次启动会列出已登录的QQ号让你选择,直接回车即可继续。
2. 中断了不用重头再来。程序注册了中断信号处理,手动停止也会先把已抓取的数据存盘。登录状态和数据缓存都在,重新运行会跳过已拉取的内容。
3. 把Excel交给数据分析。导出的表格是标准结构化数据,用pandas读进来,可以统计每年发说说的数量、提炼高频话题词,甚至生成一张"发动态频率年表",比手动翻页有意思得多。
避坑指南:注意事项与常见问题
注意事项
- 本工具仅供个人数据备份与学习研究,别用于商业用途,也别抓取他人账号的数据
- 消息列表拿不到"仅自己可见"的说说,这类内容本就只在你的隐私空间里,属正常现象
- 限速是故意的,别为了求快手动调大每批抓取条数,容易触发风控封接口
- 建议在网络好的时段运行,导出大号数据时保持电脑不休眠
常见问题排查
- 二维码识别不了:macOS下若提示找不到zbar共享库,先执行
brew install zbar;Linux按发行版安装zbar包后重试 - 登录后立刻报"登录失败":多半是二维码超时,重新运行程序再扫一次即可
- pip安装太慢:加国内镜像参数,例如
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ - 导出数据比预期少:先确认哪些属于仅自己可见的说说,再看是否中途断网;重新运行即可续传补齐
最后说两句
数据这东西,备份下来才算真正属于你。GetQzonehistory把"翻几十页网页"的苦差事,压缩成了一次扫码加几分钟等待。建议每半年跑一次,把新发的说说也收进来。等哪天想重温某个瞬间,打开本地Excel或HTML,几秒钟就能定位到那条动态——这种安心感,值得你花一个晚上把它配好。
【免费下载链接】GetQzonehistory获取QQ空间发布的历史说说项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考