[英]How to check status for jobs in list each n seconds till all jobs finished?
在開始另一個步驟之前,我在檢查所有轉錄作業的狀態時遇到問題。 我需要知道myList
中的所有作業何時為COMPLTETED
或FAILED
,如果它是錯誤的 5 秒后重試,但目前它一直在運行,有我的 python 腳本:
while True:
final_list = []
for job in myList:
status = transcribe.get_transcription_job(TranscriptionJobName=job)
final_list.append(status.get('TranscriptionJob').get('TranscriptionJobStatus'))
if all(status in final_list for status in ['COMPLETED', 'FAILED']):
break
time.sleep(5)
編輯 1可能的響應狀態可以是QUEUED
、 IN_PROGRESS
、 FAILED
、 COMPLETED
編輯 2 Omar 是對的,我沒有正確提取每個作業響應的狀態,但腳本仍然永遠運行。
get_transcription_job方法的響應語法是:
{
'TranscriptionJob': {
'TranscriptionJobName': 'string',
'TranscriptionJobStatus': 'QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED',
...
}
}
因此,不要添加包含其他字段的“狀態”object,而是需要 append status.get('TranscriptionJob').get('TranscriptionJobStatus')
改變:
final_list.append(status)
經過:
final_list.append(status.get('TranscriptionJob').get('TranscriptionJobStatus'))
參考:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.