【问题标题】:boto3 get_resources paginator doesn't work with within consoleboto3 get_resources 分页器在控制台中不起作用
【发布时间】:2017-07-17 21:17:35
【问题描述】:

我正在尝试使用 resourcesgrouptaggingAPI 中的 get_resources 并对其进行分页。我正在使用 lambda 函数和 boto3 执行此操作。

但是,使用base = client.can_paginate('get_resources') 会返回False,尽管在documentation 中它表明它适用于get_resources

另一个人遇到了这个问题并创建了一个问题 here. 现在它似乎对他有用,所以我正在尝试调查导致控制台 lambda 环境无法工作的原因。

为了清楚起见,这里是我的声明和初始化:

client = boto3.client('resourcegroupstaggingapi')
base = client.can_paginate('get_resources') #returns False
paginator = client.get_paginator('get_resources')

那么,使用控制台进行分页有问题吗?

【问题讨论】:

    标签: amazon-web-services aws-lambda boto3 tagging


    【解决方案1】:

    AWS lambda 环境并不总是运行最新版本的 boto3/botocore。它目前提供 botocore 版本 1.5.52(来源:https://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html)。您尝试访问的分页器于 1.5.53 发布(来源:https://github.com/boto/botocore/commit/144dda7b63f9eccaeae66c040a281208b43e2678

    因此,您正在尝试使用尚不支持 get_resources 分页的 botocore 版本。在这种情况下,您需要通过在捆绑前安装来将支持该功能的 boto3/botocore 版本与您的 lambda 捆绑在一起。

    例如如果您的源代码在目录 src 中:

    pip install boto3==1.4.4 cp -r /usr/local/lib/python2.7/site-packages/* src/ cd src zip -rq lambda.zip .

    【讨论】:

    • 我认为是这种情况,但确认和解决方案确实有帮助。谢谢!
    猜你喜欢
    • 2012-06-29
    • 2019-01-16
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多