def paginate(method, **kwargs): client = method.__self__ paginator = client.get_paginator(method.__name__) for page in paginator.paginate(**kwargs).result_key_iters(): for result in page: yield result # usage: import boto3 ec2 = boto3.client("ec2") instances = paginate(ec2.describe_instances, Filters=[...]) for instance in instances: # ....