如何解决“ BlobServiceClient”对象没有属性“ ls_files”
我正在尝试使用此github(https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/storage/azure-storage-blob/samples/blob_samples_directory_interface.py)中的BlobServiceClient库中的ls_files函数。但是,当我运行代码时,出现错误:
“ BlobServiceClient”对象没有属性“ ls_files”
这是我的代码:
import os,uuid,sys
from azure.storage.blob import BlobClient,BlobServiceClient,ContainerClient,PublicAccess,__version__
from azure.storage.blob.blockblobservice import BlockBlobService
import re
account_name = ACCOUNT_NAME
account_key = ACCOUNT_KEY
connect_str = CONNECTION_STRING
account_url = ACCOUNT_URL
container_name = CONTAINER_NAME
file_path = FILE_PATH
block_blob_service = BlockBlobService(account_name = account_name,account_key = account_key)
blob_service_client = BlobServiceClient(account_url = account_url,connect_str = connect_str,container_name = container_name)
def list_filenames_in_blob(blob):
file_names = blob_service_client.ls_files(file_path)
return file_names
def run_action():
try:
for blob in generator:
list_filenames_in_blob(blob)
except Exception as e:
print(e)
# Main method.
if __name__ == '__main__':
run_action()
能否让我知道我做错了什么?预先非常感谢。
解决方法
python包中的类BlobServiceClient
没有方法ls_files
。有关更多详细信息,请参阅here。我们需要自己实施。在文档中,您引用的是the user also does that。
此外,根据我的理解,我们想在一个存储容器中列出blob的名称。如果是这样,请参考以下代码
from azure.storage.blob import BlobServiceClient,BlobClient,ContainerClient
conn_str = ''
blob_service_client = BlobServiceClient.from_connection_string(conn_str)
blob_list = blob_service_client.get_container_client('<container name>').list_blobs()
for blob in blob_list:
print(blob.name)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。