yuque-dl-语雀知识库下载为本地markdown

之前有下载语雀的需求,发现了一个开源项目,用起来还是很顺手的

在这里插入图片描述

需要环境

需要前端的node环境 https://nodejs.cn/

  • Node.js 18.4 or later

插入

npm i -g yuque-dl

使用

$ yuque-dl --help

  Usage:
    $ yuque-dl <url>

  Commands:
    <url>                语雀知识库url
    server <serverPath>  启动web服务

  For more info, run any command with the `--help` flag:
    $ yuque-dl --help
    $ yuque-dl server --help

  Options:
    -d, --dist-dir <dir>  下载的目录 eg: -d download (default: download)
    -i, --ignore-img      忽略图片不下载 (default: false)
    -k, --key <key>       语雀的cookie key, 默认是 "_yuque_session", 在某些企业版本中 key 不一样 
    -t, --token <token>   语雀的cookie key 对应的值 
    --toc                 是否输出文档toc目录 (default: false)
    -h, --help            Display this message 
    -v, --version         Display version number

使用

# url 为对应需要的知识库地址
yuque-dl "https://www.yuque.com/yuque/thyzgp"

示例

其他场景

私有知识库

通过别人私有知识库 分享的链接,需使用-t添加token才能下载

yuque-dl “https://www.yuque.com/yuque/thyzgp” -t “abcd…”

token的获取请看

企业私有服务

企业服务有自己的域名(黄色语雀logo),非yuque.com结尾, 如https://yuque.antfin.com/r/zone

这种情况 token的key不唯一, 不一定是为_yuque_session 需用户使用 -k 指定 token的key,-t 指定 token的值。

至于key具体是什么只能靠用户自己在 浏览器Devtools-> Application -> Cookies 里找了🤔

公开密码访问的知识库

⚠️ 公开密码访问的知识库两种情况:

  • 已经登录语雀,访问需要密码的知识库 输入密码后使用_yuque_session这个cookie

yuque-dl “url” -t “_yuque_session的值”

  • 未登录语雀,访问需要密码的知识库 输入密码后需要使用verified_books/verified_docs这个cookie

yuque-dl “url” -k “verified_books” -t “verified_books的值”

内置启动web服务可快速预览

使用vitepress快速启动一个web服务提供可预览下载的内容

yuque-dl server ./download/知识库/

➜  Local:   http://localhost:5173/
➜  Network: use --host to expose

Feature

  • 支持下载中断继续
  • 支持图片下载本地
  • 支持下载分享私有的知识库
  • 支持转换表格类型的文档 (ps: 表格内插入图表暂不支持)
  • 添加toc目录功能
  • 添加测试
  • 添加附件下载
  • 支持其他文档类型?🤔
  • 直接打包成可执行文件 🤔

常见错误

  1. 由于token可能含有 特殊字符导致参数识别错误
yuque-dl "https://www.yuque.com/yuque/thyzgp" -t "-a123"
yuque-dl [ERROR]: Unknown option `-1`

解决方案

yuque-dl “https://www.yuque.com/yuque/thyzgp” -t=“-a123”

  1. 附件下载失败,需设置登录token

附件文件下载需要用户登录token,即使是完全公开的知识库,下载附件也可能需要

完全公开的知识库未登录的情况下查看附件:

网络问题,可以断点继续下载

由于网络波动下载失败的,重新运行即可,已下载的进度不会受到影响

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@程序员小袁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值