原来一直是有道云笔记的忠实用户,后面接触到了所见即所得 Typora,有点用不惯有道云笔记了,想着有什么法子能电脑本地文件和有道云笔记同步,这样电脑使用 Typora,手机使用有道云笔记。发现有道云笔记有 Open API ,打算利用提供的 API,写两个脚本,一个 pull 所有文件到本地,一个 push 本地文件到云笔记。但 API 太难用了,N 多年没更新了,问客服也没更新的意思,开发到最后发现竟然没有 Markdown 文件的接口,醉了。遂放弃。
现在我使用 Typora + Dropbox + MWeb 实现同步笔记和手机查看编辑的功能,很香。
最近给朋友推荐此方式,但发现有道云笔记最新的 Mac 客户端和网页端去除了导出所有笔记的功能!这是什么逻辑,怕用户跑了么。不怕,正好我原来写了导出所有笔记的脚本。
导出格式为原来默认的格式,如:Markdown 文件就是以 .md 结尾,笔记文件以 .note 结尾
1 、导出前的准备工作
git clone git@github.com:DeppWang/youdaonote-pull.git
cd youdaonote-pull
brew install python3 # Homebrew 安装 python3
sudo easy_install pip3 # 安装 Python3 Package Installer
pip3 install requests # 安装 requests 包,脚本依赖 requests
2 、运行导出脚本
python3 pullAll.py <username> <password> [localDir] # macOS
python pullAll.py <username> <password> [localDir] # Windows
3 、示例:
python3 pullAll.py deppwang@163.com 1234567 ~/Dropbox/youdaonote
4 、两个问题
5 、pullAll-config
上一次输入的相关参数会保存到 pullAll-config
中,如果参数不变,再次同步时,可以直接输入以下命令:
python3 pullAll.py # macOS
python pullAll.py # Windows
ps:脚本单纯本地运行,不用担心你的账号密码泄露
如果你可不想导出所有文件夹,你可以导出指定文件夹
1 、运行脚本
python3 pullAll.py <username> <password> [[localDir] [ydnoteDir]] # MacOS
python pullAll.py <username> <password> [[localDir] [ydnoteDir]] # Windows
2 、示例
python3 pullAll.py deppwang@163.com 1234567 ~/GitHub GitHub
3 、效果
pullAll.py 脚本采用模拟登陆方式,频繁操作会被封 ip,此时可等待几分钟后重试,若一直被封。也可使用下面这种方式
1 、先在有道云笔记上分享文件夹
2 、运行脚本
python3 pull.py <shareKey> <dirId> [localDir] # macOS
python pull.py <shareKey> <dirId> [localDir] # Windows
3 、示例
python3 pull.py <shareKey> WEB0868de6ab385d5f607b29e8cb13ffecc ~/GitHub # macOS
4 、效果
5 、一个问题
因为这个脚本我原来只导出 Markdown 格式笔记,经测试,导出的文件的 .note 文件不能正常打开,如果你有这方面的需求,请提 issue 。
6 、config
跟上面一样,上一次输入的相关参数会保存到 config
中,如果参数不变,再次同步时,可以直接输入以下命令:
python3 pull.py # macOS
python pull.py # Windows
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.