飞机上的那本书,是我把 Scribd 电子书保存为 PDF 的开始
【免费下载链接】scribd-downloaderDownload your books from Scribd in PDF format for personal and offline use项目地址: https://gitcode.com/gh_mirrors/scr/scribd-downloader
深夜的航班上,我打开 Scribd 想继续读那本电子书,页面转了三圈,最后只剩一片空白——机上没有信号。那一刻我忽然明白,在线阅读的每一页,其实都不在我手里。落地之后,我开始认真研究如何把 Scribd 电子书下载到本地,并遇到了开源工具scribd-downloader:一个能把 Scribd 电子书保存为 PDF、专为离线阅读而生的 Python 小工具。
一、三万英尺高空的断线时刻
事情要从一次出差说起。我习惯在通勤路上用手机读订阅的电子书,航班起飞前,我特意把常看的几本加入了书架,想着"反正存进去了"。直到万米高空想翻一页时,页面卡死在加载状态,我才意识到:书架只是索引,书页一直在云端。
那次之后,我列了一份"想要却带不走"的书单:地铁里读了一半的技术书、深夜反复回看的散文集、还有打算在长途旅行中读完的小说。它们的共同点是——我付过钱,却没法离线拥有它们。
二、它只做一件事:让书页真正落进硬盘
找了很多方案后,我发现了 scribd-downloader。它的思路很朴素:不是去"破解"什么接口,而是让浏览器自动完成一次真实的阅读——打开图书阅读器、逐页渲染、再把每一页保存下来,最后合并成一份完整的 PDF。
整个项目只有一个核心文件run.py,基于 Playwright 驱动浏览器,用 PyPDF2 合并页面。它做的其实就是替你把"翻页"这个动作机械化地执行一遍:读一章,存一章,最终输出书名.pdf。
说实话,第一次看到输出目录里出现那个 PDF 时,我心里有种很踏实的感受:书,终于离线地、完整地躺在我的硬盘里了。
三、二十分钟,从空目录到一本完整的 PDF
整个过程比想象中简单。假设你已经在电脑上装好了 Python 3.6+,接下来是这样:
- 把项目拿到本地:
git clone https://gitcode.com/gh_mirrors/scr/scribd-downloader - 安装两个依赖:
pip install PyPDF2 playwright,再执行playwright install下载浏览器内核。 - 复制你想下载的那本书的页面链接,运行:
python3 run.py 你的书籍URL
首次运行会弹出一个浏览器窗口,登录你的 Scribd 账户、通过验证即可。登录状态会自动写入同目录下的session.json,之后再用就不必重复登录。随后浏览器转入无头模式,安静地把每一章逐页渲染成 PDF 再合并。我那本两百多页的书,从开始到收尾大约用了二十分钟,期间不需要任何人工干预。
四、用得久了,才摸清的小门道
用得多了,我积累了几个很实用的小经验:
- 换账户很简单:想切换账号时,删掉
session.json重新运行即可,登录流程会重新出现。 - PDF 体积可以自己控制:
run.py开头的ZOOM = 0.625控制页面缩放。想追求高分辨率就调大,比如0.8;想压缩体积就调小。默认值已经是阅读清晰度与文件大小的平衡点。 - 批量下载不算难:写一个十几行的循环,把书单里的链接逐个传给
run.py,每本之间间隔十几秒,就能一口气把想读的书都搬下来。 - 遇到"Browser limit exceeded"别慌:这是 Scribd 对短时间多设备阅读的限制,通常等一天左右就会解除。
五、先说清楚边界,再用得安心
需要明确的是,这个工具目前只支持 Scribd 的电子书(eBook),文档类 PDF 和有声书都不在范围内;而且它默认保存登录状态,请留意session.json的保管。
更重要的一点是使用场景:它适合把你已经购买、有权阅读的书保存下来,供个人离线使用,而不是用来搬运、分发或商用。工具本身是 MIT 许可的开源项目,作者也明确声明不鼓励任何侵权用途。守住这条线,这份便利才能长久。
六、今夜,你也可以拥有那本"自己的书"
如今我的硬盘里多了一个"离线书房"文件夹,按类别存放着那些曾在云端陪伴我的书。下次坐飞机时,我不再需要祈祷机上有 Wi-Fi——翻开本地 PDF,想读多久就读多久。
如果你也曾在信号不好的时刻,面对打不开的电子书干着急,不妨按上面的步骤试一次:克隆项目、装上依赖、把链接交给run.py。等那一页页内容被合并成 PDF 的那一刻,你大概也会像我一样,感到一种把书"真正拥有"的安心。
【免费下载链接】scribd-downloaderDownload your books from Scribd in PDF format for personal and offline use项目地址: https://gitcode.com/gh_mirrors/scr/scribd-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考