Python Azure SDK:使用list_blobs获得超过5.000个结果

Python Azure SDK:使用list_blobs获得超过5.000个结果,第1张

概述我遇到了 Python Azure SDK的问题,并且在Stack Overflow和Msdn论坛中都没有找到任何东西. 我想使用Azure SDKs list_blobs()来获取blob列表 – 超过5.000(这是max_result). 如果我看一下SDK本身的代码,我会看到以下内容: def list_blobs(self, container_name, prefix=None, ma 我遇到了 Python Azure SDK的问题,并且在Stack Overflow和Msdn论坛中都没有找到任何东西.

我想使用Azure SDKs List_blobs()来获取blob列表 – 超过5.000(这是max_result).

如果我看一下SDK本身的代码,我会看到以下内容:

def List_blobs(self,container_name,prefix=None,marker=None,maxresults=None,include=None,delimiter=None):

‘Marker’的描述是:

marker:        Optional. A string value that IDentifIEs the portion of the List        to be returned with the next List operation. The operation returns        a marker value within the response body if the List returned was        not complete. The marker value may then be used in a subsequent        call to request the next set of List items. The marker value is        opaque to the clIEnt.

我的问题是我不知道如何使用标记来获得下一组5.000结果.如果我尝试这样的事情:

blobs = blobservice.List_blobs(target_container,prefix= prefix)                print(blobs.marker)

然后标记总是空的,我假设是因为List_blobs()已经从响应中解析了blob.

但如果是这种情况,那么我如何以有意义的方式实际使用标记呢?

我很抱歉,如果这是一个愚蠢的问题,但这实际上是第一个我找不到答案的,即使经过广泛搜索.

干杯!

解决方法 SDK在名为next_marker的变量中返回延续令牌.您应该使用它来获取下一组blob.请参阅下面的代码作为示例.在这里,我一次列出一个容器中的100个blob:

from azure import *from azure.storage import *blob_service = BlobService(account_name='<accountname>',account_key='<accountkey>')next_marker = Nonewhile True:    blobs = blob_service.List_blobs('<containername>',maxresults=100,marker=next_marker)    next_marker = blobs.next_marker    print(next_marker)    print(len(blobs))    if next_marker is None:        breakprint "done"

附:上面的代码在最后一次迭代时抛出异常.不知道为什么.但它应该给你一个想法.

总结

以上是内存溢出为你收集整理的Python Azure SDK:使用list_blobs获得超过5.000个结果全部内容,希望文章能够帮你解决Python Azure SDK:使用list_blobs获得超过5.000个结果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1197100.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存