侧边栏壁纸
博主头像
Zeeland

全栈算法工程师 | 大模型创业 | 开源项目分享 | Python开发者 | @Promptulate Founder | @SparkLab cofounder | @LangChainAI Top Contributor | @CogitLab core member

  • 累计撰写 61 篇文章
  • 累计创建 47 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

语雀导出markdown的图片外链问题

Zeeland
2022-12-18 / 0 评论 / 2 点赞 / 420 阅读 / 648 字

Introduction

本人因为经常使用语雀写博客,但是因为语雀转markdown的时候图片存在防外链行为,如果想要把转出的markdown发表在其他平台,就需要把md中所有的图片地址改成没有放外链的地址,这样子才可以让别人正常查看。

刚开始的时候,对于语雀导出的markdown,里面的图片我都是结合PicGo一张一张的将图片的链接转移成自己的图床,但是因为本人一直都有发博客的需求,这个问题我是不太忍得了,加上网上搜索也没有什么人做了相似的解决方案,因此笔者自己用python写了一个转换器,旨在解决这个问题,笔者设计了一个可以批量转换markdown中的图片链接为自己的图床的链接的转换器,并重写成一个新的md文件。您只需要修改yaml配置就可以直接运行,十分方便。

项目地址:https://github.com/Undertone0809/md-img-converter

功能

  • 批量下载markdown中所有的图片
  • 上传markdown的图片到你的图床中
  • 转换你的markdown图像在原始url到您的图形床url。
  • 生成一个新的markdown文件,里面的图片链接都来自你的图床。

快速上手

  1. 首先,clone下本项目打开,然后pip
pip install -r requirements.txt
  1. 配置 yaml

打开 config.yaml 配置你的图床,你可以使用 test.md进行测试。

# project root markdown file name
file_path: "test.md"
# default adapter is aliyun oss
adapter: "Aliyun"
# Whether to save the image to local 
# (no image will be deleted after executing the command)
save_image: True
# Aliyun oss config
Aliyun:
  access_key_id: "your key"
  access_key_secret: "your key secret"
  bucket_name: "your bucket"
  place: "beijing"
  1. run your Application
python main.py
  1. generate the converted file

最后在一通转换过后,生成文件 yourfilename_converted.md。新的文件会把原来语雀的旧链接全部替换掉。

最终效果

语雀转换成markdown之后的文件如下图所示

运行主程序之后:

以后在语雀导出markdown之后,如果想要再将markdown发表到其他平台上,只需要简单的转换一下就可以了,不需要再一张一张图片的换了。

附上笔者关于该问题的另外一篇讨论,和另外一种解决方案: https://www.blog.zeeland.cn/archives/markdown-patch-solution

2

评论区