66 lines
2.0 KiB
Python
Executable File
66 lines
2.0 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""
|
|
Скрипт для проверки и отправки файлов на распознавание
|
|
"""
|
|
from autoLoader.loader.recognition_checker import process_pending_files
|
|
from autoLoader.config import GIGAAM_API_URL
|
|
import sys
|
|
import logging
|
|
from dotenv import load_dotenv
|
|
|
|
# Загружаем .env файл
|
|
load_dotenv()
|
|
|
|
# Настройка логирования
|
|
logging.basicConfig(
|
|
level=logging.INFO,
|
|
format='%(asctime)s - %(levelname)s - %(message)s'
|
|
)
|
|
|
|
|
|
def main():
|
|
"""Главная функция"""
|
|
# Получаем параметры из командной строки
|
|
api_url = sys.argv[1] if len(sys.argv) > 1 else GIGAAM_API_URL
|
|
limit = int(sys.argv[2]) if len(sys.argv) > 2 else None
|
|
|
|
print(f"🚀 Запуск проверки файлов на распознавание")
|
|
print(f"📡 API URL: {api_url}")
|
|
print(f"📂 Config URL: {GIGAAM_API_URL}")
|
|
if limit:
|
|
print(f"📊 Лимит: {limit} файлов")
|
|
print()
|
|
|
|
# Запускаем проверку
|
|
results = process_pending_files(api_url=api_url, limit=limit)
|
|
|
|
# Итоги
|
|
print(f"\n{'='*60}")
|
|
print(f"📊 ИТОГИ ОБРАБОТКИ:")
|
|
print(f"{'='*60}")
|
|
print(f"Всего файлов без заключения: {results['total']}")
|
|
print(f"✅ Отправлено на распознавание: {results['sent']}")
|
|
print(f"❌ Ошибок при отправке: {results['failed']}")
|
|
|
|
if 'error' in results:
|
|
print(f"\n⚠️ {results['error']}")
|
|
|
|
# Детали по каждому файлу
|
|
if results.get('files'):
|
|
print(f"\n📋 Детали:")
|
|
for file_result in results['files']:
|
|
status = "✅" if file_result['success'] else "❌"
|
|
print(f" {status} {file_result['filename']}")
|
|
|
|
print(f"{'='*60}\n")
|
|
|
|
# Код выхода
|
|
if results['failed'] > 0:
|
|
sys.exit(1)
|
|
else:
|
|
sys.exit(0)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|