Дополнительные фильтры означали, что было возвращено очень мало (один?) Результатов. Следовательно, нумерация страниц не была необходима. Если у вас меньше фильтров, будет возвращено больше результатов, поэтому может потребоваться разбиение на страницы.

ользую AWS boto3 для определения цены экземпляров.

Но я не получаю результаты для комбинации (мы запад 2, r3.2x большой, Linux, предварительно не установленное программное обеспечение, аренда = совместное использование)

Вот мой код:

pricing = boto3.client('pricing', region_name='us-east-1')
hourlyTermCode = 'JRTCKXETXF'
rateCode = '6YS6EN2CT7'
token = ''
while True:
    paginator = pricing.get_paginator('get_products')
    pages = paginator.paginate(
        ServiceCode='AmazonEC2',
        Filters=[
            {'Type': 'TERM_MATCH', 'Field': 'operatingSystem', 'Value': 'Linux'},
            {'Type': 'TERM_MATCH', 'Field': 'location', 'Value': 'US West (Oregon)'}

        ],

        PaginationConfig={
            'StartingToken':token
        }
    )

    for response in pages:
        for price in response['PriceList']:
            resp = json.loads(price)
            product = resp['product']  # ['attributes']['']
            sku = product['sku']

            if product['productFamily'] == 'Compute Instance':
                if str(product['attributes']['instanceType']) == str(amazon_instance_type) :
                    if str(product['attributes']['operatingSystem']) == 'Linux':
                        if str(product['attributes']['preInstalledSw']) == 'NA':
                            if str(product['attributes']['tenancy']) == 'Shared':
                                sku_key = resp['terms']['OnDemand'].get(sku)
                                if sku_key:
                                    price = sku_key[sku + '.' + hourlyTermCode + '.' + rateCode]['pricePerUnit']['USD']
                                    print 'here 7'
                                    print price

        try:
            token = response['NextToken']
        except KeyError:
            pass

Ответы на вопрос(1)

Ваш ответ на вопрос