# -*- coding: utf-8 -*- """plan_{기관}.json 의 auto='어문'(콘텐츠이미지 없음) 행 → N에서 '이미지' 제거(강등). candidate 행은 보존(사용자/추가 시각판정 영역). 하늘색 표시는 하지 않음(사용자 지시). 사용: python _공공기관_napply.py <기관명> """ import sys, os, json import openpyxl OUTDIR = r'D:\01.프로젝트\DB수집\공공기관' TEMP = r'D:\01.프로젝트\DB수집\_temp' def demote(N): parts = [p for p in (N or '').split(',') if p and p != '이미지'] return ','.join(parts) if parts else '없음' def run(name): plan = json.load(open(os.path.join(TEMP, f'nshot_{name}', f'plan_{name}.json'), encoding='utf-8')) xlsx = os.path.join(OUTDIR, f'{name}.xlsx') wb = openpyxl.load_workbook(xlsx) ws = wb.active chg = 0 for it in plan: if it['auto'] == '어문': r = it['row'] cur = ws.cell(r, 14).value or '' if '이미지' in cur: ws.cell(r, 14).value = demote(cur) chg += 1 wb.save(xlsx) cand = sum(1 for it in plan if it['auto'] == 'candidate') print(f'[{name}] 이미지강등 {chg}행 | 잔여이미지후보 {cand}행(시각판정 영역)') if __name__ == '__main__': run(sys.argv[1])