Files
jhonny-editor/code/engine/consultar_status_da_analise.py
João Henrique 19d10e61a1 feat: sincronizado o estado de transcrição, métricas e diarização
- sincronizado o estado de transcrição, métricas e diarização entre SQLite, Scanner e Editar vídeo

Resumo:
- 6 arquivos alterados
- 1 novos
- 5 modificados
- 0 removidos

 5 files changed, 181 insertions(+), 12 deletions(-)

Arquivos:
  - code/cep-plugin/index.html
  - code/cep-plugin/main.js
  - code/cep-plugin/styles.css
  - code/engine/persistencia/consultas.py
  - code/engine/testes/test_consultas_de_persistencia.py
  - code/engine/consultar_status_da_analise.py
2026-09-09 19:45:15 -04:00

40 lines
1.3 KiB
Python

"""Consulta o estado editorial persistido de uma análise do Scanner."""
from __future__ import annotations
import argparse
import json
from pathlib import Path
import sys
CAMINHO_DO_CODIGO = Path(__file__).resolve().parent.parent
if str(CAMINHO_DO_CODIGO) not in sys.path:
sys.path.insert(0, str(CAMINHO_DO_CODIGO))
from engine.persistencia.consultas import ConsultasDeAnalises
def executar(caminho_do_banco: Path, video_id: str) -> dict:
"""Consulta o banco e devolve o estado da análise solicitada."""
resultado = ConsultasDeAnalises(caminho_do_banco).consultar_status_da_analise(video_id)
if resultado is None:
raise ValueError(f"Vídeo não encontrado no banco: {video_id}")
return resultado
def principal() -> None:
"""Executa a consulta pela linha de comando."""
argumentos = argparse.ArgumentParser()
argumentos.add_argument("video_id")
argumentos.add_argument("--banco", type=Path, default=Path(".jhonny/analises.db"))
opcoes = argumentos.parse_args()
try:
print(json.dumps(executar(opcoes.banco, opcoes.video_id), ensure_ascii=False))
except (OSError, ValueError) as erro:
print(json.dumps({"erro": str(erro)}, ensure_ascii=False))
raise SystemExit(1) from erro
if __name__ == "__main__":
principal()