前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >博客园上传markdown文件

博客园上传markdown文件

作者头像
dongfanger
发布2020-09-23 09:54:14
1.1K0
发布2020-09-23 09:54:14
举报
文章被收录于专栏:dongfangerdongfanger

个人习惯用markdown写博客,然后同步到博客园,每次同步都比较麻烦。

于是通过metaweblog实现了,一步上传markdown文件的小工具。

工具地址:https://github.com/dongfanger/pycnblog

功能

  • 一键拖拽上传
  • 默认“未发布”,支持直接发布
  • 重复上传,更新博客
  • 支持图片自定义显示格式
  • 支持上传后生成替换后本地文件

环境

python3

配置

在config.yaml中,填写博客配置信息。

代码语言:javascript
复制
blog_url: https://rpc.cnblogs.com/metaweblog/testblog
blog_id: "testblog"
username: "zhangsan"
password: "123456"

blog_url

blog_url在博客后台>设置,页面最下方的MetaWeblog访问地址。 https://rpc.cnblogs.com/metaweblog/testblog

blog_id

blog_id就是访问地址的尾巴, testblog。

username

username是登录用户名,跟blog_id不一定是同一个。

password

password是密码。

运行

windows cmd: 打开cnblog_markdown.cmd(windows里面双击此文件即可),提示Please input file path: 把文件往里一拖,回车就完事了

markdown图片存储设置

写markdown有一利器Typora,一般图片存储设置我会修改成这样。

打开文件>偏好设置,找到'图片插入'

修改为'复制到指定路径',规则设置为./${filename}/

下面的3个选项全部勾选。

这样当复制粘贴图片到markdown时,就会在目录中新建一个同名文件夹,存储图片。

工具原理

本工具的基本原理是,调用metaweblog的相关api,把图片上传到服务器后,获取url替换本地图片地址,再上传文件到博客园,在博客园后台能看到新博客。

metaweblog是一个开放api,用于和远程blog交互,可以通过xmlrpc建立连接

代码语言:javascript
复制
server = xmlrpc.client.ServerProxy(blog_url)

这里用到了2个api:图片上传.metaWeblog.newMediaObject和博客上传.metaWeblog.newPost。

上传图片部分,通过asyncio包,实现了异步上传。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 功能
  • 环境
  • 配置
    • blog_url
      • blog_id
        • username
          • password
          • 运行
          • markdown图片存储设置
          • 工具原理
          相关产品与服务
          对象存储
          对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档