【免费下载链接】zlibrary-to-notebooklm一键将 Z-Library 书籍自动下载并上传到 Google NotebookLM项目地址https://gitcode.com/gh_mirrors/zl/zlibrary-to-notebooklm点击查看免费下载zlibrary-to-notebooklm 是一个一键从 Z-Library 链接自动下载书籍并上传到 Google NotebookLM 的开源工具核心是 Playwright 浏览器自动化模拟真实浏览器访问书页同时适配新旧两代页面版本一条命令走完登录 → 下载 → 转换 → 上传全流程。本文带你拆解它的页面适配技巧与稳定下载的实战要点新手也能看懂。为什么选择 Playwright 浏览器自动化Z-Library 的书籍页面有三个特点让直接请求网页的方案很难奏效需要登录态下载必须带账号会话手动管理 Cookie 非常麻烦页面经常改版Z-Library 经历过界面更新下载入口、菜单结构换过好几轮需要服务端转换部分书籍要先点转换为 PDF/EPUB等页面提示转换完成才能下载。Playwright 驱动一个真实的 Chromium 浏览器点击、等待、下载都像一个真人用户天然能应对以上场景。依赖非常轻只需 requirements.txt 中列出的playwright、ebooklib等几个库。⚠️ 本项目仅供学习、研究和技术演示请只处理你拥有合法访问权限的内容。持久化浏览器上下文一个记得住你的浏览器整个自动化的关键在 scripts/upload.py 的这几行browser await p.chromium.launch_persistent_context( user_data_dirstr(config_dir / browser_profile), headlessFalse, accept_downloadsTrue, args[--disable-blink-featuresAutomationControlled] )三个要点user_data_dir指向持久化目录Cookies、缓存全部落在~/.zlibrary/browser_profile/下次再启动浏览器网站仍认为你已登录实现一次登录、长期复用accept_downloadsTrue开启下载事件监听书籍文件落盘时能被脚本稳稳接住--disable-blink-featuresAutomationControlled关闭我是自动化程序的一个标记避免被网站轻易识别为爬虫。一次性登录把会话状态存成文件登录脚本 scripts/login.py 用同样的方式启动浏览器这次由你亲自完成登录然后在终端按回车脚本用一行代码把所有登录状态cookies、localStorage保存为文件browser.storage_state(pathstr(storage_state))文件位于~/.zlibrary/storage_state.json。之后每次运行上传脚本都会自动复用这个会话无需再登录会话过期时重新跑一次登录脚本即可。新旧页面适配下载按钮到底藏在哪这是本项目最核心的秘密。Z-Library 页面改版后下载入口在不同版本的页面上长得不一样scripts/upload.py 采用了先识别版本、再逐级回退的策略页面版本识别特征下载入口新版三点菜单页面存在更多选项菜单按钮点击菜单 → 选 PDF 或 EPUB 选项旧版转换按钮页面存在a[data-convert_topdf]点转换按钮 → 等待转换完成 → 点生成的链接兜底以上都找不到按顺序找/dl/直接下载链接用三点菜单判断页面版本脚本第一步是探测新版界面的三点菜单按钮scripts/upload.pydots_button await page.query_selector( button[aria-label更多选项], button[title更多], .more-options, [class*dots], [class*more] )注意这是一个候选选择器列表Z-Library 前端类名经常变化所以不押注单一选择器而是把几种可能的写法都覆盖进去命中任意一个即可。这是 Web 自动化里最常用的留余地写法。找到后点击展开菜单优先选PDF选项保留排版且可直传 NotebookLM没有 PDF 就降级选EPUB。旧版页面点转换按钮等服务端转换完找不到三点菜单说明页面大概率还是旧版。旧版入口是一组转换按钮scripts/upload.pyconvert_selector_pdf a[data-convert_topdf] convert_selector_epub a[data-convert_toepub]点击转换后不能立即下载——Z-Library 需要先在服务端把文件转成目标格式。脚本每秒轮询一次转换完成的页面提示最长等待 60 秒scripts/upload.py。所以看到等待提示别急着关脚本这是正常过程。兜底策略直接下载链接菜单和转换按钮都没找到时脚本还会退而求其次用一组通用选择器找直接下载链接、含下载 / Download文字的按钮scripts/upload.py甚至能从 URL 中判断文件是 PDF 还是 EPUB。三条路径都失败才报错——这个三重保险让项目在页面再次改版后依然大概率可用。小技巧用 JavaScript 点击而不是模拟鼠标脚本点击下载链接时不是模拟鼠标点击而是在页面里执行一行 JSscripts/upload.pyawait download_link.evaluate(el el.click())很多下载链接被弹层遮挡或位于折叠区域常规点击会卡在元素可见性检查上JS 点击直接触发元素自身的 click 事件稳稳绕开这个坑。如何稳定接住书籍文件点击下载前脚本已经提前注册了下载事件处理器scripts/upload.py一旦浏览器开始下载就按原始文件名自动保存到~/Downloads/目录。此外还有一道保险若事件监听没接住文件脚本会扫描下载目录中最近 2 分钟内出现的 PDF/EPUB总能把文件找回来。下载完成后脚本自动按格式分流PDF直接拿来上传零转换EPUB调用 scripts/convert_epub.py 提取文本并转为 Markdown词数超过 35 万时按章节自动分块、逐块上传规避 NotebookLM CLI 处理大文件时容易超时的问题。完整链路从一条链接到 AI 可读笔记本把上面所有环节串起来就是 docs/WORKFLOW.md 中的完整流程图Z-Library 链接 → 启动浏览器带保存的会话→ 识别页面版本 → 智能选格式PDF 优先EPUB 备选→ 等待转换并下载 → 格式处理PDF 直用 / EPUB 转 Markdown / 大文件自动分块 → 创建 NotebookLM 笔记本 → 上传 → 返回笔记本 ID上传完成后你只需要notebooklm use 笔记本ID notebooklm ask 这本书的核心观点是什么项目还支持安装为 Claude Skill克隆仓库并完成一次登录后把 Z-Library 链接粘贴给 Claude Code整个流程自动跑完详见 SKILL.md。新手快速上手三步跑起来第 1 步安装依赖pip install playwright ebooklib playwright install chromium第 2 步一次性登录python3 scripts/login.py浏览器自动打开 → 手动完成登录 → 回终端按回车会话即已保存。第 3 步一键下载并上传python3 scripts/upload.py https://zh.zlib.li/book/12345/...完整安装说明见 INSTALL.md常见问题排查见 docs/TROUBLESHOOTING.md。常见问题 FAQ❓ 提示未找到会话状态会话过期或未登录过重新运行python3 scripts/login.py保存新会话即可。❓ 提示未找到下载链接多半是页面结构又变了。先用浏览器手动打开链接确认页面可访问、能下载再参考故障排查指南逐步排查。❓ 转换一直超时这是正常等待服务端格式转换最长约需 60 秒脚本会自动检测完成信号后继续耐心等待即可。小结zlibrary-to-notebooklm 把 Playwright 的两个核心用法讲得明明白白——持久化浏览器上下文 会话文件解决登录复用问题候选选择器 三级回退解决新旧页面适配问题再配合下载事件捕获与 JS 点击把繁琐的手工下载变成一条命令的事。如果你也在做浏览器自动化这种先为改版留余地的写法非常值得借鉴。赞分享【免费下载链接】zlibrary-to-notebooklm一键将 Z-Library 书籍自动下载并上传到 Google NotebookLM项目地址https://gitcode.com/gh_mirrors/zl/zlibrary-to-notebooklm点击查看免费下载相关推荐如何用zlibrary-to-notebooklm把Z-Library书籍自动上传NotebookLM零基础实战指南如何用zlibrary to notebooklm把Z Library书籍自动上传NotebookLM零基础实战指南 zlibrary to notebookPlaywright MCP Server 浏览器自动化实战指南Playwright MCP Server 浏览器自动化实战指南 Playwright MCP Server 是一个基于 Playwright 的浏览器自动化工MCP 服务浏览器控制AI 应用Midscene.js与Playwright融合实战智能浏览器自动化新篇章Midscene.js与Playwright融合实战智能浏览器自动化新篇章 技术革命的开端 在当今快速发展的Web自动化领域 Midscene.js与Pla人工智能AI Agent测试GUI 自动化浏览器控制测试智能体创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考 SEO 优化官网定制响应式建站教育培训建站