首页 > 编程语言 >OSS 上传和删除图片 Python SDK

OSS 上传和删除图片 Python SDK

时间:2024-01-16 21:46:44浏览次数:28  
标签:name Python OSS object bucket file image png SDK

最近在搞一些全栈的小项目, 涉及到图片的上传, 删改等操作, 想着还是用这个云服务器来整一波, 阿里云的 OSS对象存储, 40G 1年9块钱, 值得拥有!

前提

  • 购买了阿里云 OSS 服务
  • 创建了 Access Key 和 Access Key Secret
  • 创建了一个 Bucket , 虽然也可以用代码, 但没有必要
  • 安装了 Python3.8+ 环境, 和 pip install oss3

实测演示

from oss2 import Auth, Bucket, ObjectIterator
 
# 设置Access Key ID和Access Key Secret
access_key_id = 'LTAI5tLxxxxx'
access_key_secret = 'Pk80TXXYEDTaQxxxxxxx'

# OSS服务地址, buket 的名称 (手工建的), 存储空间名称
endpoint = 'https://oss-cn-shenzhen.aliyuncs.com' 
bucket_name = 'yy' 

auth = Auth(access_key_id, access_key_secret)
bucket = Bucket(auth, endpoint, bucket_name)

bucket_path = 'https://' + bucket_name + '.'  + endpoint.split('//')[-1]



def put_image(local_file, file_name):
    # local_file 是要上传文件的完整路径
    # file_name 默认在 buket 下:  a.png 表示 yy/a.png;  
    # a/b.png 表示 yy/a/b.png, 不存在则新建, 存在则追加
    try:
        with open(local_file, 'rb') as fp:
            result = bucket.put_object(file_name, fp)
            if result.status == 200:
                # https://yy.oss-cn-shenzhen.aliyuncs.com/test/cj2.png
                image_url = bucket_path + '/' +  file_name
                print('上传成功!, 此图片链接为: ', image_url)
    except Exception as err:
        print(err)


def del_image(file_full_path):
    file_name = file_full_path.split("com/")[-1]
    bucket.delete_object(file_name)
    
    exist = bucket.object_exists(file_name)
    if not exist:
        print(file_name, ' 删除成功!')

        
if __name__ == '__main__':
    
    # 上传测试
    # put_image('./cjj.png', 'yg.png')
    
    # 删除
    del_image('https://yy.oss-cn-shenzhen.aliyuncs.com/test/cj3.png')
    

小结

  • 上传 API: put_object(file_name, fp)
  • 删除API: delete_object(file_name)
  • 存在API: object_exists(file_name)

标签:name,Python,OSS,object,bucket,file,image,png,SDK
From: https://www.cnblogs.com/chenjieyouge/p/17968611

相关文章

  • python 安装 llama
    Python安装Llama介绍在Python中安装Llama是一种非常简单的方法,它可以帮助我们更轻松地处理数据和进行数据分析。Llama是一个强大的Python库,它提供了许多实用的功能和工具,可帮助我们在数据处理和分析方面更加高效。安装步骤下面是安装Llama的简单步骤:步骤1:安装Pyt......
  • stable diffusion python运行时no python frame
    实现“stablediffusionpython运行时nopythonframe”的步骤如下:确定需求:首先,我们需要明确这个需求的具体要求是什么,以便我们能够有针对性地进行开发和实现。在这个需求中,我们需要实现一个稳定的Python运行时,不使用Python的框架。设计系统架构:在开始编写代码之前,我们需要先......
  • whisper python 时间戳
    实现"whisperpython时间戳"教程1.整体流程首先,我们需要明确整个实现"whisperpython时间戳"的流程。下面是一个简单的表格展示每个步骤:步骤描述步骤1导入所需的模块和库步骤2获取当前时间戳步骤3将时间戳转换为可读的时间格式步骤4输出结果......
  • Python Whisper 实时语音识别
    PythonWhisper实时语音识别简介在现代科技的快速发展下,语音识别技术逐渐成为我们生活中必不可少的一部分。PythonWhisper实时语音识别就是一种基于Python的语音识别库,它能够实时地将人的语音转化为文本。本文将介绍PythonWhisper的基本概念、使用方法以及相关代码示例。什......
  • Stable Diffusion 设置python环境文件夹
    StableDiffusion设置python环境文件夹引言作为一名经验丰富的开发者,我们经常需要在不同的项目中使用不同的Python环境。为了保持环境的稳定和隔离,我们可以使用StableDiffusion来管理Python环境文件夹。在本文中,我将向你介绍如何设置Python环境文件夹,以及每一步需要做什么。步......
  • python 文心一言作图
    Python文心一言作图实现指南1.引言在本指南中,我将教会你如何用Python实现“文心一言作图”。这个项目的目标是使用Python编程语言生成一张包含文心一言的图片。我们将逐步引导你完成整个过程,帮助你理解每一步所需的代码和其作用。2.实现流程下面是整个实现流程的步骤,我们将使......
  • python 调用llama 2 模型测试
    Python调用Llama2模型测试Llama2是一种用于处理自然语言的语言模型,它基于神经网络和深度学习算法,能够进行文本生成、情感分析等任务。在本文中,我们将学习如何使用Python调用Llama2模型进行测试。安装Llama2首先,我们需要安装Llama2模型及其相关依赖。可以通过以下命令使用pi......
  • python whisper 语音 转 文字
    PythonWhisper语音转文字在当今信息爆炸的时代,语音识别技术成为了人们获取信息的一种重要方式。Python作为一种强大而灵活的编程语言,也提供了多种工具和库,用于实现语音转文字的功能。其中,Whisper库是一个能够将语音转换为文字的强大工具。本文将为您介绍Whisper库的基本用法,并通......
  • stable diffusion有python包吗
    如何使用Python包实现stablediffusion简介在这篇文章中,我将向你介绍如何使用Python包来实现stablediffusion。Stablediffusion是一种经典的物理模型,可以用于描述颗粒在流体中的扩散过程。通过使用Python包,我们可以方便地实现和模拟这个模型,以便更好地理解和分析扩散的过程。......
  • Python第四小节随笔(循环)
    ##foriinrange(5):#外层循环可以进行5次i默认从0开始#forjinrange(1,11):#ifj%2==0:#continue#print(j,end='\t')#print()#'''#要求输出1到50之间所有5的倍数#'''##法一#foriinrange(1,51......