当前位置: 首页 > 知识库问答 >
问题:

AzureBlob上载错误:指定的blob已存在

和季
2023-03-14
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

conn_str = yml['AZURE_BLOB']['CONN_STR']
container_name = yml['AZURE_BLOB']['CONTAINER_NAME']

# Create the BlobServiceClient that is used to call the Blob service for the storage account
blob_service_client = BlobServiceClient.from_connection_string(conn_str=conn_str)

# Create a blob client using the local file name as the name for the blob
blob_client = blob_service_client.get_blob_client(container=container_name, blob=destination_file_name)

# Upload the created file
data = fs.open(source_path,mode='rb').read()
blob_client.upload_blob(data)

print(destination_file_name+'\t......[DONE]')
azure.core.exceptions.ResourceExistsError: The specified blob already exists.
RequestId:13d062cd-801e-00a4-77c7-a81c56000000
Time:2019-12-02T04:18:06.0826908Z
ErrorCode:BlobAlreadyExists
Error:None

共有1个答案

左丘恩
2023-03-14

如果希望使用blob存储客户端库v12覆盖现有的blob,只需在upload_blob方法中添加overwrite=true即可。

下面是示例代码:

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

conn_str = "xxx"
container_name = "test6"

blob_service_client = BlobServiceClient.from_connection_string(conn_str=conn_str)
blob_client = blob_service_client.get_blob_client(container=container_name,blob="a1.txt")

with open("F:\\temp\\a1.txt","rb") as data:
    blob_client.upload_blob(data,overwrite=True)

print("**completed**")

执行代码后,新的blob被上载,现有的blob可以被覆盖。截图如下:

 类似资料:
  • 从16:00到16:12,下载有短暂的暂停。停顿之间的间隔是相同的,但长度会增加。在 16:12 时,速度变为 Kb/s,并且永远不会返回到正常值。 下面是进行下载的代码(。NET 4.0): 这些问题的原因可能是什么? 编辑 为了获取统计信息,我使用以下 Stream 实现:

  • 我正在尝试创建一项服务,该服务将允许我: 将文件上传到Azure blob存储 返回进度 重试失败时 成功时调用我的服务保存文件路径 为了实现这一点,我开始按照本教程中的媒体。我已经能够在存储器中保存文件并返回当前进度。 当我想调用保存了文件路径的服务时,问题就来了。 我已经看了下面的内容来尝试解决如何实现这一点,但是没有成功地发出多个http请求,rxjs文档会发出后续的http请求。 我正在努

  • 以下是我的上传代码: 编辑:我将base64字符串复制到一个在线转换器中,看起来不错,它返回了正确的图像。看起来,数据没有问题。firebase的处理方式有问题。 编辑:我尝试显式地将类型设置为image/jpeg而不是image/jpg,如下所述:当Firestorage关闭时显示图像的正确方式,或者在Firestorage for iOS中加载预览时出错,但没有区别。

  • 我是Liquibase的新手,我尝试将liquibase与postgres数据库一起使用liquibase脚本创建数据库表。我所做的是,我已经手动创建了Postgres表并通过运行命令 mvn液化酶:generateChangeLog 我创建了liquibase-outputChangeLog.xml文件。现在我尝试更新该脚本并在数据库中创建一个表。为此,我将XML代码写入新表的ChangeLog

  • 我遵循下面的注意事项来挂载blob存储。 工作流和支持说明:https://docs.microsoft.com/en-us/azure/storage/blobs/network-file-system-protocol-support 装入BLOB的说明:https://docs.microsoft.com/en-us/azure/storage/blobs/network-file-syst

  • 问题内容: 我要添加此表: 我得到了1050个“表已经存在” 但是该表不存在。有任何想法吗? 编辑:更多细节,因为每个人似乎都不相信我:) 产量: 1146-表’gunzfact_vbforumdb.contenttype’不存在 和 产量: 1050-表“ contenttype”已存在 问题答案: 听起来好像您有Schroedinger的桌子 … 严重的是,现在您的表可能已损坏。尝试: 如果您