@@ -55,6 +55,7 @@ async def start_and_wait(
5555 return_all_pages : bool = True ,
5656 poll_interval_seconds : float = 2.0 ,
5757 max_wait_seconds : Optional [float ] = 600.0 ,
58+ max_status_failures : int = POLLING_ATTEMPTS ,
5859 ) -> BatchScrapeJobResponse :
5960 job_start_resp = await self .start (params )
6061 job_id = job_start_resp .job_id
@@ -67,6 +68,7 @@ async def start_and_wait(
6768 is_terminal_status = lambda status : status in {"completed" , "failed" },
6869 poll_interval_seconds = poll_interval_seconds ,
6970 max_wait_seconds = max_wait_seconds ,
71+ max_status_failures = max_status_failures ,
7072 )
7173
7274 if not return_all_pages :
@@ -142,6 +144,7 @@ async def start_and_wait(
142144 params : StartScrapeJobParams ,
143145 poll_interval_seconds : float = 2.0 ,
144146 max_wait_seconds : Optional [float ] = 600.0 ,
147+ max_status_failures : int = POLLING_ATTEMPTS ,
145148 ) -> ScrapeJobResponse :
146149 job_start_resp = await self .start (params )
147150 job_id = job_start_resp .job_id
@@ -154,6 +157,7 @@ async def start_and_wait(
154157 is_terminal_status = lambda status : status in {"completed" , "failed" },
155158 poll_interval_seconds = poll_interval_seconds ,
156159 max_wait_seconds = max_wait_seconds ,
160+ max_status_failures = max_status_failures ,
157161 )
158162 return await retry_operation_async (
159163 operation_name = f"Fetching scrape job { job_id } " ,
0 commit comments