This commit is contained in:
Andrey Cunh@ 2026-02-26 13:12:25 -03:00
parent 8b72f58d02
commit bd1c1f3a08
3 changed files with 20 additions and 4 deletions

Binary file not shown.

View File

@ -451,6 +451,7 @@ def main() -> None:
CP_ID = 10269
TAKE = 25
MAX_PAGINAS_RECENTES = 15
MAX_PAGINAS_SEM_NOVIDADE = 5
DOCUMENT_TYPE = "NDEB"
SQL_CONN = (
"DRIVER={ODBC Driver 17 for SQL Server};"
@ -478,6 +479,7 @@ def main() -> None:
total_paginas = None
relogins = 0
max_relogins = 20
paginas_sem_novidade = 0
while True:
try:
page = get_debit_notes_page(session, auth, CP_ID, skip, TAKE, franchises)
@ -569,6 +571,7 @@ def main() -> None:
except Exception as e:
print(f"[erro] {doc_id} -> {e}")
novos_na_pagina = len(page_rows)
if page_rows:
stats_page = upsert_rows_sqlserver(page_rows, SQL_CONN)
total_docs_upsert += int(stats_page.get("documentos") or 0)
@ -578,14 +581,25 @@ def main() -> None:
f"parc_upsert={stats_page['parcelas']} acumulado_docs={total_docs_upsert} "
f"acumulado_parc={total_parcs_upsert}"
)
if skipped_existing:
print(f"[page] pagina={pagina} skip_sql={skipped_existing}")
if novos_na_pagina == 0:
paginas_sem_novidade += 1
else:
paginas_sem_novidade = 0
print(
f"[page] pagina={pagina} novos={novos_na_pagina} skip_sql={skipped_existing} "
f"sem_novidade={paginas_sem_novidade}/{MAX_PAGINAS_SEM_NOVIDADE}"
)
skip += TAKE
print(f"[page] concluida {pagina} acumulado_docs={total_docs_upsert} total={total}")
if pagina >= MAX_PAGINAS_RECENTES:
print(f"[stop] limite diario atingido: {MAX_PAGINAS_RECENTES} paginas recentes")
break
if paginas_sem_novidade >= MAX_PAGINAS_SEM_NOVIDADE:
print(f"[stop] sem novidades por {MAX_PAGINAS_SEM_NOVIDADE} paginas consecutivas")
break
if total and skip >= total:
break
@ -594,3 +608,5 @@ def main() -> None:
if __name__ == "__main__":
main()

4
trf.py
View File

@ -1228,8 +1228,8 @@ if __name__ == "__main__":
document_type="EFAT",
limit=100,
only_channels=None,
max_paginas_sem_novidade=3,
max_paginas=20,
max_paginas_sem_novidade=5,
max_paginas=15,
)
else:
c = Client()