基于博客园和xmlrpc的Typora图片上传脚本

Image uploader for Typora

基于博客园和xmlrpc的Typora图片上传脚本,项目可在GitHub查看:faf4r/image-uploader-for-typora

Description

在Typora中插入的图片都是本地图片,对于本地保存很不错,但要想分享文档时就很麻烦了。在Typora设置中可以指定插入图片时进行上传操作,或者在格式->图像中上传图片,故而关键就是图像上传服务的配置。

Typora默认支持的几个上传服务的默认图床都不是很适合我,又因为我写的文档大多会发布到博客园,且博客园本身支持图片上传,所以直接将图片上传到博客园是最佳的选择。

该项目主要利用博客园支持MetaWeblog协议(可在设置中启用),使用Python内置的xmlrpc进行调用,编写了一个简单的命令行脚本。

Installation

可直接在GitHub下载源码或使用git clone https://github.com/faf4r/image-uploader-for-typora.git获取。

Usage

  1. 必须拥有博客园账号,并在博客后台设置->其他设置处勾选允许 MetaWeblog 博客客户端访问,点击查看MetaWeblog访问令牌,创建并保存访问令牌。
  2. 参照example.config.py创建config.py,填写相应的账号信息。
  3. 执行python uploader.py --init,程序将自动获取blogid并写入config.py,同时也可验证rpc调用是否正常。(若无此操作,在上传时会自动进行)
  4. 通过python uploader.py --help查看帮助信息,通过python uploader.py --upload <image_path>上传图片。(PS: 测试发现博客园不会检测相同文件并复用,所以多次上传同一图片会在图片库中冗余)
  5. 在Typora的图像设置中的上传服务设定选择上传服务自定义命令,并在命令栏输入python "uploader.py所在路径" --upload,然后点击验证图片上传选项进行验证。
  6. [可选]将插入图片时的操作设置为上传图片,也可在需要时在格式中选择上传图片。

TODO

Reference

MetaWeblog:搭建内容发布桥梁的实用协议 - 张朋举 - 博客园

MetaWebLog API — 一个多平台文章同步的思路 - 知乎

博客园支持的MetaWeblog RPC方法点击MetaWeblog访问地址进行查看

posted @ 2025-10-18 21:03  faf4r  阅读(8)  评论(0)    收藏  举报