# -*- coding: utf-8 -*- """공공기관 N 이미지 몽타주 재판정 일괄: 각 기관 렌더+크기필터(nshot) → 이미지강등 적용(napply). 국토연구원은 이미 처리 → 스킵. 사용: python _공공기관_nbatch.py [기관명 ...] """ import sys, os, json, importlib.util def load(mod): spec = importlib.util.spec_from_file_location(mod, rf'D:\01.프로젝트\DB수집\_스크립트\{mod}.py') m = importlib.util.module_from_spec(spec); spec.loader.exec_module(m) return m nshot = load('_공공기관2_nshot') napply = load('_공공기관2_napply') probe = {r['name']: r for r in json.load(open(r'D:\01.프로젝트\DB수집\_스크립트\_공공기관2_probe.json', encoding='utf-8'))} order = sorted(probe.values(), key=lambda x: -int(x['num'])) only = sys.argv[1:] if only: order = [p for p in order if p['name'] in only or str(p['num']) in only] DONE = {'국토연구원'} for p in order: name = p['name'] if name in DONE: print(f'[{name}] 이미 처리 — 스킵'); continue try: nshot.run(name) napply.run(name) except Exception as e: import traceback print(f'[{name}] 실패: {e}'); traceback.print_exc() print('\n=== N이미지 몽타주 재판정 일괄 완료 ===')