amazon-web-services - list_images 的 aws boto3 分页器
问题描述
有人可以帮我理解并在此 list_images 代码中执行分页器代码:当我运行此程序以获取 ec2imagebuilder 的图像列表时,作为响应,我得到了 nexttoken,因此如何使用它来列出下一页中的所有图像/直到结束。
client = boto3.client('imagebuilder')
response = client.list_images(owner='Amazon')
print(response)
Response (Trucated result):
{'ResponseMetadata': {'RequestId': 'f4b9e178-b959-4e23-be57-0c234fbec69d', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 10 May 2020 21:53:55 GMT', 'content-type': 'application/json', 'content-length': '8709', 'connection': 'keep-alive', 'x-amzn-requestid': 'f4b9e178-b959-4e23-be57-0c234fbec69d', 'x-amz-apigw-id': 'MVet5Hp0PHcFeaw=', 'x-amzn-trace-id': 'Root=1-5eb877f2-9bec8ecc200f1394f6b0d340;Sampled=1'}, 'RetryAttempts': 0}, 'requestId': 'f4b9e178-b959-4e23-be57-0c234fbec69d', 'imageVersionList': [{'arn': 'arn:aws:imagebuilder:us-west-2:aws:image/amazon-linux-2-x86/2019.11.21', 'name': 'Amazon Linux 2 x86', 'version': '2019.11.21', 'platform': 'Linux', 'owner': 'Amazon', 'dateCreated': '2019-11-30T07:37:51.495Z'}, {'arn': 'arn:aws:imagebuilder:us-west-2:aws:image/windows-server-2012-r2-rtm-english-core-x86/2019.11.19', 'name': 'Windows Server 2012 R2 RTM English Core x86', 'version': '2019.11.19', 'platform': 'Windows', 'owner': 'Amazon', 'dateCreated': '2019-11-30T07:38:07.177Z'}], 'nextToken': 'eyxxxMS4xOSIsICJBY2NvdW50SWQiOiAiNTgwMDg3NjIzMDA1In0sICJtYXhfcmVzdWx0cyI6IDI1LCAia2V5X2NvbmRpdGlvbnMiOiB7IkFjY291bnRJZCI6IHsiQXR0cmlidXRlVmFsdWVMaXN0IjogWyI1ODAwODc2MjMwdddiOiBmYWxzZSwgInNjYW5faW5kZXhfZm9yd2FyZCI6IHRydWUsICJleHBpcmF0aW9uX2RhdGUiOiAxNTg5MjM0MDM1fQ=='}
解决方案
根据文档,您可以使用以下代码段列出亚马逊拥有的所有图像。
client = boto3.client('imagebuilder')
response = client.list_images(owner='Amazon')
print(response['imageVersionList'])
while 'nextToken' in response:
response = client.list_images(owner='Amazon', nextToken=response['nextToken'])
print(response['imageVersionList'])
推荐阅读
- java - Okhttp3 with consrypt for http2 support in jdk8
- angular - Angular recaptcha v3,代码显示错误,无法执行该功能
- javascript - 如何导入导出模块返回值到其他js文件
- android - Android KeytoolException: 无法读取密钥 AndroidDebugKey lengthTag=109, 太大
- pandas - 从另一个数据帧的值中获取最大值
- javascript - DataTables 的格式正确的表抛出错误
- c# - 是否可以让多个类(无论是 UITableViewCell 还是 UIViewController)在 Xamarin.iOS 中共享一个 xib?
- azure - 将企业机器人模板(SDK V4+C#)从 Visual Studio 2017 发布到 azure 应用服务时出现问题
- wpf - WPF 和 EF 与等待异步,冻结我的 UI
- pandas - 读取具有列表数据类型的列