Typora+开源图床+Python构建你的便捷移动MarkDown工作站

嘉美伯爵

Python Typora 308

今天给大家介绍一款效率神器:Typora。我们使用码云(Gitee)来存放我们的写的博客文章和写博客过程中产生的图片。使用Python自动化上传写博客过程中产生的图片到码云(Gitee)。通过Python+码云我们可以直接在Typora MarkDown编辑器内将本地图片上传到码云服务器。下面我们将分三个部分来讲解。

pic (1)

注册Gitee并申请码云API所需要的令牌

这一步主要是申请个人令牌,为后续步骤做准备

  • Gitee主页点击设置

image-20210112145202805

  • 点击左侧侧边栏的私人令牌

image-20210112145245861

  • 点击生成新令牌,默认权限即可

image-20210112145401568

  • 复制保存一下生成的令牌

image-20210112145624518

创建图床仓库

根据下面的提示和标注创建自己的图床仓库

img

Python自动化上传图片到码云图片仓库

下面贴一下上传图片到码云的关键代码,还有一部分是压缩图片(由于微信不会处理大于2M的图片,这里我们需要进行一下判断压缩)大小的代码,大家需要完整代码的可以微信后台回复码云,我已经整理好了最新的版本。下面的这段代码有三个地方是需要进行配置的,即令牌数据,码云名,图床仓库名,大家替换为自己的就可以了。

  • 上传到码云的代码
def upload_gitee(filename, flag=None):
    """
    上传到码云
    :return:
    """

    if flag:
        base64_data = base64.b64encode(filename)
        base64_content = base64_data.decode()
    else:
        with open(filename, 'rb') as f:
            base64_data = base64.b64encode(f.read())
            base64_content = base64_data.decode()

    path = f"online/{uuid1()}.jpg"
    payload = {
        "access_token": "粘贴你的令牌",
        "owner": "码云名",
        "repo": "图床仓库名",
        "path": path,
        "content": base64_content,
        "message": "upload image"
    }
    url = f'https://gitee.com/api/v5/repos/jiameibojue_tech/imgs/contents/{path}'
    rep = requests.post(url, json=payload).json()
    image_url = rep['content']['download_url']
    return image_url
  • typora配置

    需要对typora进行一下简单的配置,python 脚本名称即可,注意自己存放脚本的目录,对应修改一下即可

image-20210112205037179

  • 看一下效果

pic (1)

创建文章仓库

再次新建一个仓库来存放文章,注意这个仓库不要要README.md进行初始化仓库,不然下图中的信息你就看不到了。这一步其实可有可无,如果你有在多台电脑办公的需求,可以使用码云来进行中转文章数据。如果不想让自己的文章暴露在互联网上,你可以把仓库设置为私有的仓库。通过码云进行中转的好处在于,在不同的电脑我们只需要git clone一下就可以了。

  • 新建仓库后

image-20210112204213926

  • 进入到需要提交的文件夹下
git init
  • 添加远程仓库地址

    这一步需要根据个人仓库的真实地址来填写

git remote add origin git@gitee.com:码云名/仓库名.git
  • 提交到本地
git add .
  • 提交备注
git commit -m "init"
  • 提交到远程
git push -u origin master

总结

这样就构建了一个强大的个人移动编译器,经过简单的配置后,你可以随时随地查看你的工作、生活已经学习记录,关键全部是白嫖,没有任何一个环节是收费的!

  • 如果还有其他疑问,可以留言,大家一起讨论

  • 关注公众号《Python数据结构》,后台回复 码云 即可获取