Typora+MinIO+Python代码打造舒适协作环境

这篇具有很好参考价值的文章主要介绍了Typora+MinIO+Python代码打造舒适协作环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者:IT王小二

博客:https://itwxe.com

不知不觉大半年没更新了...前面小二介绍过使用Typora+MinIO+Java代码打造舒适写作环境,然后有很多大佬啊,说用Java来实现简直是杀鸡用上牛刀,小二想了想,确实有点...正好小二最近在学习Python,所以咱们就改用Python实现一版。

安装MinIO

安装参考MinIO官网,或者参考小二的博客,搜索关键词 → Linux安装MinIO

安装完成之后使用域名映射好后台服务,小二使用nginx配置域名,配置参考如下。

    server {
        listen 443 ssl;
        server_name minio.itwxe.com;
        include /usr/local/nginx/conf/conf.d/common.conf;
        access_log logs/minioAccess.log;

        location / {
            proxy_pass http://127.0.0.1:9000;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }

    server {
        listen 443 ssl;
        server_name minio-console.itwxe.com;
        include /usr/local/nginx/conf/conf.d/common.conf;
        access_log logs/minioAccess.log;

        location / {
            proxy_pass http://127.0.0.1:9020;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }

其中common.conf为域名通用配置。

        ssl_certificate /usr/local/nginx/ssl/fullchain.crt;
        ssl_certificate_key /usr/local/nginx/ssl/itwxe.com.key;
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout 30m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers HIGH:!aNULL:!MD5:!EXPORT56:!EXP;
        ssl_prefer_server_ciphers on;
        proxy_connect_timeout 500;
        proxy_send_timeout 500;
        proxy_read_timeout 500;
        client_max_body_size 100m;

配置好之后访问https://minio-console.itwxe.com即可访问后台。

同时为了存储桶图片所有人可以访问,需要将存储桶设置为公开。

Typora+MinIO+Python代码打造舒适协作环境

Python代码实现上传

首先,小二作为一个半吊子Python学习者,看了下MinIO官网提供的SDK范例。

安装依赖。

pip install minio

官网示例代码。

from minio import Minio
from minio.error import S3Error


def main():
    # Create a client with the MinIO server playground, its access key
    # and secret key.
    client = Minio(
        "play.min.io",
        access_key="Q3AM3UQ867SPQQA43P2F",
        secret_key="zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG",
    )

    # Make 'asiatrip' bucket if not exist.
    found = client.bucket_exists("asiatrip")
    if not found:
        client.make_bucket("asiatrip")
    else:
        print("Bucket 'asiatrip' already exists")

    # Upload '/home/user/Photos/asiaphotos.zip' as object name
    # 'asiaphotos-2015.zip' to bucket 'asiatrip'.
    client.fput_object(
        "asiatrip", "asiaphotos-2015.zip", "/home/user/Photos/asiaphotos.zip",
    )
    print(
        "'/home/user/Photos/asiaphotos.zip' is successfully uploaded as "
        "object 'asiaphotos-2015.zip' to bucket 'asiatrip'."
    )


if __name__ == "__main__":
    try:
        main()
    except S3Error as exc:
        print("error occurred.", exc)

于是乎,小二开始依葫芦画瓢,代码如下。

import sys
import time
from pathlib import Path
import random
from minio import Minio

minio_domain = 'minio.itwxe.com'
minio_access_key = '你的账号名称'
minio_secret_key = '你的密码'
# 存储桶名称
bucket_name = 'img'
# 存储桶子文件夹名称
bucket_name_dir_name = 'blog'

# 获取minio客户端连接
minio_client = Minio(minio_domain, minio_access_key, minio_secret_key)

if not minio_client.bucket_exists(bucket_name):
    # 如果存储桶不存在,则创建
    minio_client.make_bucket(bucket_name)

# 获取图片参数
images = sys.argv[1:]

for image in images:
    # 文件后缀
    suffix = Path(image).suffix
    # 自定义文件名,使用13位时间戳+2位随机数
    file_name = '{}{}{}'.format(round(time.time() * 1000), random.randint(10, 99), suffix)
    # 文件存储桶下子路径拼接
    remote_full_path_name = '{}/{}'.format(bucket_name_dir_name, file_name)
    # 上传文件
    minio_client.fput_object(bucket_name, remote_full_path_name, image)
    # 打印文件路径
    print("https://minio.itwxe.com/{}/{}".format(bucket_name, remote_full_path_name))

写完之后小二不禁感慨,确实比Java简单亿点点,设置一下typora,python 你的python文件位置

Typora+MinIO+Python代码打造舒适协作环境

这张图片就是上传后的路径结果啦,在此,小二也祝愿大家可以愉快的写作。文章来源地址https://www.toymoban.com/news/detail-434139.html

到了这里,关于Typora+MinIO+Python代码打造舒适协作环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 分享5款小软件,让你打造更舒适的办公电脑

    每次发现实用的小工具,都会有种小小的成就感,这也是我喜欢收集和分享高效工具的原因。 CustomizerGod是一款强大的电脑图标定制软件,可以让你随心所欲地改变系统中的任何图标。你可以使用CustomizerGod来修改桌面、任务栏、开始菜单、文件夹、驱动器、控制面板等地方的图

    2024年02月11日
    浏览(48)
  • Linux 部署 MinIO 分布式对象存储 & 配置为 typora 图床

    MinIO 是一款高性能的对象存储系统,它可以用于大规模的 AI/ML、数据湖和数据库工作负载。它的 API 与Amazon S3 云存储服务完全兼容,可以在任何云或本地基础设施上运行。MinIO 是 开源软件 ,也提供商业许可和支持 MinIO 的特点有: 简单 :MinIO 的安装和使用都非常简单,只需

    2024年02月07日
    浏览(59)
  • 浅谈什么是语音芯片的白噪音支持功能:打造舒适家居与优质音频体验

    随着科技的不断进步和人们对生活质量要求的提升,语音芯片已经成为了现代电子产品中不可或缺的一部分。而在这些语音芯片中,支持白噪音的功能逐渐受到人们的关注。本文将围绕语音芯片中的白噪音支持功能展开讨论,带您领略其带来的舒适家居与优质音频体验。 首先

    2024年02月05日
    浏览(90)
  • Typora打造最适合编程笔记的精美主题(浅色版和修改后的深色版),可自行修改喜欢的样式。

    转载自 豫冬川:Typora打造最适合编程笔记的精美主题(浅色版和修改后的深色版),可自行修改喜欢的样式。 Typora是非常优秀的Markdown编辑器,可惜自带的样式比较简陋。经过多种typora主题的选择,感觉少数派风格最好,@张晋基于少数派风格的主题进行了一些修改。我觉得

    2023年04月18日
    浏览(32)
  • 打造自己的分布式MinIO对象存储

    MinIO是一个对象存储解决方案,它提供了一个与Amazon Web Services S3兼容的API,并支持所有核心S3特性。MinIO旨在部署在任何地方——公共云或私有云、裸机基础架构、协调环境和边缘基础架构。 分布式MinIO如何工作 Server Pool由多个Minio服务节点与其附属的多个磁盘构成。MinIO支持

    2024年02月11日
    浏览(56)
  • 人工智能与智能家居:创造更舒适的生活环境

    随着科技的发展,人工智能(AI)已经成为了我们生活中不可或缺的一部分。智能家居是人工智能在家庭生活环境中的一个重要应用领域。智能家居可以通过集成多种传感器、摄像头、声音识别等设备,实现智能化的控制和管理,从而提高生活质量,提高生产效率,降低能源消耗

    2024年03月09日
    浏览(108)
  • 牛逼,两百行Python代码带你打造一款《天天酷跑》游戏!

    最近一段时间,晓晓发现已经好久没有给大家带来趣味游戏的案例展示了。 刚好晓晓趁着周末写了一个《天天酷跑》的游戏,因此拿来跟大家一起分享,和大家一起来重温经典的酷跑游戏。 俗话说,“工欲善其事,必先利其器”,我们先来介绍一下本次我们用到的库有哪些

    2024年02月04日
    浏览(42)
  • Typora主题,设置代码块Mac风格三个小圆点

    Typora 编辑器让人们能更简单地用 Markdown语言 书写文字,解决了使用传统的Markdown编辑器写文的痛点,并且界面简洁优美,实现了实时预览等功能。 1.1 第一步打开偏好设置 1.2 第二步打开主题文件夹 可通过色卡app自行搭配一套笔记搭的颜色 表格各行变色,宽度设置为100%(个

    2024年02月17日
    浏览(44)
  • 如何搭建开源知识库软件AFFiNE并实现公网环境远程协作【内网穿透】

    了解如何使用Docker安装AFFiNE,结合cpolar内网穿透工具实现公网远程访问。AFFiNE是一个全能知识库工具,帮助用户集中存储、管理会议记录、待办事项、文档等工作流程。

    2024年01月24日
    浏览(51)
  • 【Typora】基于python3实现CSDN图床

    写博客既想在typora这款软件上写,又想将图片传到云上。之前也使用过Github + Picgo + Typora实现 访问传送门:https://github.com/al6nlee/Picture 基于python3实现实时上传图片到CSDN上 pip3 install Pillow pip3 install requests pip3 install requests_toolbelt pip3 install psutil UploadPic函数上传图片水印: x-imag

    2023年04月16日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包