ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

知识星球一键备份:用 zsxq-spider 把 1000 条帖子做成 PDF 电子书

知识星球一键备份:用 zsxq-spider 把 1000 条帖子做成 PDF 电子书

知识星球一键备份:用 zsxq-spider 把 1000 条帖子做成 PDF 电子书

【免费下载链接】zsxq-spider爬取知识星球内容,并制作 PDF 电子书。项目地址: https://gitcode.com/gh_mirrors/zs/zsxq-spider

先讲一个很常见的场景:你在某个知识星球里跟了两年,攒下了几百篇干货、上千条问答和讨论,平时没觉得有什么。直到某天平台调整、账号出问题,或者你想换一种更舒服的阅读方式,才发现这些内容只能在线看,想整理成一份能随时翻阅的资料几乎无从下手。手动截图太慢,复制粘贴又丢格式,收藏夹里的链接也随时可能失效。zsxq-spider 正是为这个问题而生的开源工具,它能把知识星球里的文章、图片和评论自动抓取下来,排版成一份精美的 PDF 电子书,让你的知识沉淀真正属于自己。

为什么你需要它:一张表看懂两种方式

传统保存方式zsxq-spider 自动方案
逐条手动截图,费时费力一条命令全量导出,后台自动运行
图片、文字、评论分散在不同文件图片内嵌、评论完整,统一成一本电子书
依赖网络,离线就看不生成本地 PDF,随时随地离线阅读
平台变动后内容可能消失内容落盘,数据永久留存
无法按时间、精华筛选支持精华筛选和时间区间,按需导出

一句话总结:它把"在网页里翻帖子"变成了"读一本离线电子书",效率和时间成本完全不在一个量级。

核心能力拆解:它能为你做什么

① 识别多种内容形态,问答不丢上下文

知识星球里既有普通发言,也有提问和回答。zsxq-spider 在抓取时会自动区分话题、问答、任务等类型,对于问答类内容,会把提问和回答整理在同一页,并标注回答者,读起来逻辑完整。核心逻辑都在项目根目录的crawl.py里,感兴趣可以直接翻代码。

② 图片以 base64 内嵌,电子书不依赖外部资源

很多帖子附带的图片是学习资料的重要组成部分。工具默认开启图片下载(DOWLOAD_PICS = True),把图片转码后直接嵌入 PDF,而不是存一个外部链接。这意味着你拿到手的电子书是自包含的,换电脑、传云盘都不会丢图。

③ 评论、精华、时间范围,全都可配置

如果你只想导出某个月的讨论,或者只想保留星主置顶的精华内容,也完全支持。ONLY_DIGESTS控制只看精华还是全部,FROM_DATE_TO_DATE配合起止时间可以做历史内容的批量分档导出,方便按主题归档。

实操演示:四步生成你的第一本电子书

第一步:准备环境

git clone https://gitcode.com/gh_mirrors/zs/zsxq-spider cd zsxq-spider pip install pdfkit BeautifulSoup4 requests

关键步骤:PDF 生成依赖 wkhtmltopdf,请先到官网下载对应系统版本,安装后把它的 bin 目录加入系统环境变量(PATH),否则最后一步会报"电子书生成失败"。

第二步:填入三个关键参数

打开crawl.py,找到配置区,只需要改三个地方:

ZSXQ_ACCESS_TOKEN = '你的Token' # 登录后浏览器Cookie中的值,必须修改 USER_AGENT = '你浏览器对应的UA' # 必须与登录时一致,否则可能被拒绝 GROUP_ID = '452445212848' # 从星球URL中提取的数字ID
  • Token 获取方式:浏览器登录知识星球 → 开发者工具(F12)→ Application/Cookies 中找zsxq_access_token
  • 小组 ID 获取方式:打开星球页面的网址,地址栏里的那一串数字就是

第三步:按需微调导出选项

DOWLOAD_PICS = True # 是否下载图片,关闭可加快速度 DOWLOAD_COMMENTS = True # 是否保留评论 ONLY_DIGESTS = False # True 只导精华,False 导全部 PDF_FILE_NAME = '我的电子书.pdf'

第四步:运行

python crawl.py

程序会自动分页请求 API、下载图片、把每条内容组装成 HTML 片段,最后统一交给 wkhtmltopdf 合成 PDF。中间会生成temp.json方便你查看原始返回数据,运行结束后生成的 HTML 和图片默认会被自动清理(DELETE_HTML_WHEN_DONEDELETE_PICS_WHEN_DONE),保持目录整洁。

进阶技巧:更高效、更稳、更好看

先小范围试跑,再全量导出。首次运行建议把DEBUG设为TrueDEBUG_NUM设为 30 左右,先验证 Token、ID 配置是否正确、样式是否满意,确认无误后再关闭 DEBUG 全量导出,避免白跑一趟。

控制请求节奏,降低被封风险。工具默认开启SLEEP_FLAG = True,每次翻页间隔SLEEP_SEC秒。如果你的星球内容特别多,可以把间隔调大一些,同时把COUNTS_PER_TIME保持在 30 以内的合理值,对服务器更友好。

用时间区间做分批归档。想导出一年半载的历史内容时,建议按月设置FROM_DATE_TO_DATE,配合EARLY_DATE/LATE_DATE分几次导出,既方便排查问题,也便于按时间命名文件存档。

定制你的专属排版。觉得默认样式太素?直接改项目根目录的temp.css,比如调整标题字号、正文行距、图片圆角和阴影,改完重新运行即可生效,一本书的观感完全由你掌控。

常见问题与避坑指南

问:提示 API 请求失败或认证错误怎么办?先确认 Token 是否过期,重新登录浏览器获取最新值;再检查USER_AGENT是否与登录时一致;最后确认网络能正常访问知识星球接口。

问:最后一步提示"电子书生成失败"?绝大多数情况是 wkhtmltopdf 没有正确安装或未加入 PATH。安装后可在命令行输入wkhtmltopdf --version验证,能输出版本号就说明环境就绪。另外生成大文件时注意内存是否充足。

问:内容抓取不全或丢失了某些帖子?检查是否误开了ONLY_DIGESTS或时间区间过滤;也可以把DEBUG打开查看处理到哪条数据时报错;temp.json中保留了原始返回,可用来核对接口数据。

问:关闭图片下载后,为什么电子书里没有图?DOWLOAD_PICS = False时图片不会被嵌入,属于预期行为。想要图文完整,请保持其为True,并接受稍长的运行时间。

写在最后

知识星球里沉淀的,是时间、金钱和思考换来的积累,值得被好好保存。zsxq-spider 的价值不在于"爬虫"两个字,而在于它把散落的数字内容变成了一本可携带、可搜索、可永久保存的个人电子书——从今天起,你不再依赖平台的存续,也不用担心账号的意外。花十分钟配置,就能换来一份长期的安心。建议现在就克隆项目、填入参数、先跑一个小范围测试,亲手感受一次"一键生成电子书"的畅快,然后把它纳入你的定期备份习惯:每月跑一次,让知识越攒越厚。

【免费下载链接】zsxq-spider爬取知识星球内容,并制作 PDF 电子书。项目地址: https://gitcode.com/gh_mirrors/zs/zsxq-spider

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表