Using boto3 library for Python, while trying to perform an operation on DynamoDB such as creating a new table, you might end up on the following problem:

'dynamodb.ServiceResource' object has no attribute 'get_waiter'

Solution

This happens when you are using boto3.resource:

import boto3
dynamodb = boto3.resource('dynamodb', region_name = 'me-south-1')

Instead use this:

dynamodb = boto3.client('dynamodb', region_name = 'me-south-1')

The only difference is in using boto3.client instead of boto3.resource for DynamoDB. Fix this and the error for DynamoDB will disappear.