当我想使用boto 3获得EMR列表时,无法获得
我以不同的方式尝试了
m="None"
while True:
try:
cluster_list_result=client.list_clusters(ClusterStates=['WAITING'], CreatedAfter=datetime(2017,5,19),
CreatedBefore=datetime(2019,5,19) ,Marker=m)
print(cluster_list_result)
m=cluster_list_result.Marker # See if there are more
print("m value is" +m)
except AttributeError:
break
需要cliuster替代的列表
boto3-emr的list_client api不会期望标记参数为无。另外,您不必始终将标记参数重新响应,因为它只是一个分页令牌以获得进一步的结果。
我已经更新了您的代码,这对我来说很好:
import boto3
client = boto3.client('emr',region_name='us-east-1')
marker=None
while True:
try:
if marker:
cluster_list_result=client.list_clusters(ClusterStates=['WAITING'], CreatedAfter=datetime(2017,5,19), CreatedBefore=datetime(2019,5,19), Marker=marker)
else:
cluster_list_result = client.list_clusters(ClusterStates=['WAITING'], CreatedAfter=datetime(2017, 5, 19), CreatedBefore=datetime(2019, 5, 19))
print cluster_list_result
if 'Marker' in cluster_list_result:
marker = cluster_list_result['Marker']
else:
break
except Exception, e:
raise e