调用Azure Blob Storage list_blobs时出现Incorrect padding错误
解决办法
- 手动分页拉取
Blob数量过万时,默认分页逻辑可能触发编码问题,手动控制分页:
try: blob_list = [] continuation_token = None while True: # 每页拉取1000条,可根据情况调整 current_page, continuation_token = self.container_client.list_blobs( continuation_token=continuation_token, results_per_page=1000 ) blob_list.extend(current_page) if not continuation_token: break print("Blob列表:") for blob in blob_list: print(blob.name) except Exception as e: print(f"获取Blob列表时出错: {str(e)}")
- 升级依赖包
12.19.1版本可能存在分页处理的已知bug,升级到最新稳定版:
pip install --upgrade azure-storage-blob
排查特殊名称Blob
部分特殊字符的Blob名称在列表序列化时可能引发padding错误,可尝试过滤这类Blob测试。检查认证凭证
若用SAS Token,确认Token格式正确、未过期——虽然上传下载正常,但列表操作的认证逻辑可能存在细微差异。
内容的提问来源于stack exchange,提问作者gluck0101
相关产品推荐
相关产品推荐

