File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -41,3 +41,4 @@ tmtagsHistory
4141.bundle
4242
4343condalibrary /*
44+ .env
Original file line number Diff line number Diff line change @@ -270,6 +270,24 @@ def merge_results(self, results):
270270 break
271271 return total_res
272272
273+ async def find_all_generator (self , page_size = 1000 ):
274+ max_page_size = 1000
275+ if page_size > max_page_size :
276+ raise ValueError (f"El tamaño máximo permitido es { max_page_size } , pero se recibio { page_size } " )
277+ self .set_page_size (page_size )
278+ self .set_page (1 )
279+ self .set_url (True )
280+ query_compiled = self .query .compile ()
281+ data = await self .__then (query_compiled )
282+ yield data
283+ if data ["success" ]:
284+ total_pages = data ["total_pages" ]
285+ for i in range (1 , total_pages ):
286+ query_aux = copy .deepcopy (query_compiled )
287+ query_aux ['page' ] = i
288+ data = await self .__then (query_aux )
289+ yield data
290+
273291 async def find_all_query (self , page_size = 1000 , max_in_parallel = 2 ):
274292 self .set_page_size (page_size )
275293 self .set_page (1 )
Original file line number Diff line number Diff line change 22from sbxpy .__init__ import SbxCore as Sc
33import asyncio
44import os
5+ from dotenv import load_dotenv
56
67'''
78This is a test using the os environment:
89credentials app: APP-KEY, DOMAIN
910credentials user: LOGIN, PASSWORD
1011'''
1112
13+ load_dotenv ()
1214async def main (sci ):
1315
1416 qb = Qb ()
@@ -29,6 +31,11 @@ async def main(sci):
2931# domain = await sci.list_domain()
3032 sci .headers ['Authorization' ] = 'Bearer ' + os .environ ['TOKEN' ]
3133 all_data = await sci .with_model (os .environ ["MODEL" ]).find_all ()
34+
35+ print ("\n === Prueba de find_all_generator ===\n " )
36+ async for page_data in sci .with_model (os .environ ["MODEL" ]).find_all_generator ():
37+ print (f"Número de registros en esta página: { len (page_data ["results" ])} " )
38+
3239 return all_data
3340
3441
You can’t perform that action at this time.
0 commit comments