
왜? Open URLs App이 탄생했는가
요약
대량의 스크린샷 캡처와 PowerPoint 삽입 작업을 자동화하기 위한 'Open URLs App'의 개발 배경을 다룹니다. 기존 AI 툴의 재현성 문제와 보안 및 기술적 한계를 극복하고, 비엔지니어도 로컬 환경에서 원버튼으로 업무를 완결할 수 있는 솔루션을 제안합니다.
핵심 포인트
- 대량 스크린샷 작업의 수작업으로 인한 효율 저하 및 휴먼 에러 문제
- 생성형 AI의 확률적 특성으로 인한 재현성 및 정확성 확보의 어려움
- 보안 정책(VPN/사내망) 및 클라우드 접근 제한 문제 해결 필요성
- URL 임포트부터 PPT 배치까지 전 과정을 자동화하는 로컬 앱 개발
■ 대량의 스크린샷을 수작업으로 진행할 때의 문제점
스크린샷을 찍는 작업은 1장만이라면 단순한 조작입니다. 하지만 매수가 「100장」, 「300장」으로 늘어나면 작업 효율은 현저히 저하됩니다.
예를 들어
- 리스트에서 URL을 복사하여 브라우저를 열고 붙여넣기.
- 페이지가 표시될 때까지 기다린 후 스크롤하여 캡처를 저장하기.
- PowerPoint를 열어 이미지를 삽입하기.
- 슬라이드 크기에 맞춰 이미지 축소 및 위치 조정하기.
이 작업을 1회 수행하는 데 30초가 걸린다고 가정하면, 300장일 경우 장시간의 단순 작업이 됩니다.
모든 공정이 수동으로 이루어지기 때문에 기술적으로 효율화되어 있지 않습니다. 기업 현장에서는 감사나 검증의 「에비던스 (Evidence, 증거) 작성」으로서 이러한 수작업이 일상적으로 발생하고 있습니다.
이 문제의 원인은 구조적으로 「자동화되지 않은 작업」을 수작업으로 처리하고 있다는 점에 있습니다.
■ AI를 사용했을 때의 업무 환경의 벽
- 인증 페이지 돌파 불가: 테스트 환경이나 사내 시스템의 대부분은 로그인 인증(ID·비밀번호 등)이 있어 외부 AI 툴은 접근할 수 없습니다.
- 사내 네트워크 접속 불가: 보안이 엄격한 환경(VPN이나 프록시 내부)에는 클라우드형 AI가 접속할 수 없습니다.
- 동적인 Web 페이지 처리의 불안정성: 지연 로딩 (lazy-loading)이나 팝업 다이얼로그에 대해 AI는 올바르게 렌더링을 기다리지 못할 수 있습니다.
가장 큰 문제는 AI가 「100번 실행해서 100번 모두 완전히 동일한 결과를 내는 것」을 어려워한다는 점입니다.
생성형 AI는 확률에 기반하기 때문에 결과에 변동이 생깁니다. 하지만 감사의 증거에 있어서 「1픽셀의 어긋남」이나 「캡처 위치의 변경」은 허용되지 않습니다.
AI는 정확성과 재현성이 요구되는 에비던스 작성에는 적합하지 않은 기술이었습니다.
■ 업무용 에비던스 (증적)에 가장 요구되는 과제
- 처리해야 할 URL의 수가 많음
- 페이지마다 로딩 속도가 다르며, 렌더링이 느린 페이지가 있음
- 지연 로딩이 있어 스크롤하지 않으면 이미지가 올바르게 표시되지 않음
- 페이지마다 세로 길이가 다름
- 이미지를 PowerPoint 슬라이드에 붙여넣는 작업이 수작업임
- 이미지의 축소나 위치의 미세 조정이 매번 필요함
- 보안 정책으로 인해 클라우드형 자동화 서비스를 사용할 수 없음
- AI에는 동일한 결과를 내는 「재현성」이 없음
- 스크립트만으로는 PowerPoint로의 자동 흘려넣기까지 일원화할 수 없음
스크린샷 작업의 과제는 「100%의 재현성이 필요한 작업임에도 불구하고, 재현성을 담보하는 시스템이 존재하지 않는 것」입니다.
수작업이 늘어나면 붙여넣기 실수, 어긋남, 누락 등의 휴먼 에러 (Human Error)가 발생합니다.
■ 기존 툴이나 스크립트가 안고 있는 한계
- 브라우저 확장 기능: 「100장」, 「300장」의 URL을 한꺼번에 밀어 넣으면 메모리를 소비하여 크래시 (Crash)가 발생합니다.
- 클라우드형 서비스: VPN 내부에는 접근할 수 없으며, 기밀 정보가 포함된 화면을 외부 서버에 업로드하는 것은 보안상 허가되지 않습니다.
- 자동화 스크립트 (Playwright 등):
이미지를 저장한 후의 「PowerPoint 레이아웃 공정」 자동화가 어려워, 비엔지니어에게 배포하여 사용하게 하는 것은 현실적이지 않습니다.
실무 작업을 끝내기 위해서는 URL 리스트 임포트부터 브라우저 일괄 실행, 자동 캡처, PowerPoint 배치 조정까지를 「프로그래밍 지식 없이, 로컬 PC 상에서 완결할 수 있고, 원버튼으로 실행할 수 있는 앱」으로 만들 필요가 있었습니다.
■ 모든 공정을 원버튼으로 잇는 툴의 개발
URL 텍스트 파일을 읽어 들여, 백그라운드에서 브라우저를 자동 제어하고, 스크린샷을 찍게 한 뒤, 그 이미지 파일을 현재 열려 있는 PowerPoint에 직접 흘려넣는 기능입니다.
설계 방향성
- URL 리스트를 붙여넣는다.
- 버튼을 한 번 누른다.
- 백그라운드에서 브라우저가 움직이며 모든 스크린샷이 끝난다.
- 레이아웃이 완료된 PowerPoint 자료가 완성된다.
요구되는 성능은 AI와 같은 기능이 아니라, 「100% 동일한 절차로, 100% 동일한 결과를, 몇 번이고 정확하게 계속 내놓는 것」이라는 재현성과 안정적인 동작입니다. 지정된 URL 리스트에 대해 항상 동일한 화각으로, 동일한 렌더링 대기를 거쳐, 동일한 사이즈로 슬라이드에 자동 삽입되는 것. 이것이 품질 보증이나 감사 현장에서 사용할 수 있는 조건이었습니다.
■ 100% 로컬 환경에서의 동작을 고집한 설계 사상
개발 과정에서 「100% 로컬 처리로 한다」는 설계 사상을 채택했습니다. 클라우드 기능은 구현하지 않았습니다.
- 입력 데이터나 이미지를 1바이트도 PC 외부로 전송하지 않음 (폐쇄망에서도 동작 가능)
- PC에서 로그인 중인 브라우저의 세션(Session)을 그대로 이어받아 캡처
- 제어 엔진(Control Engine)을 로컬 머신 내부(127.0.0.1)에서만 완결
- PowerPoint 슬라이드 자동 생성도 외부 API를 사용하지 않고, Windows 표준 COM API를 통해 로컬 환경에서 직접 수행
■ 실무 현장에 필요한 기능만을 형상화한 결론
『Open URLs App』은,
- AI로는 대체할 수 없는 100%의 「재현성 (Reproducibility)」 확보
- 엄격한 보안 정책에 가로막힌 사내 PC 환경에서도 동작하는 「로컬 완결 처리」
- 1픽셀의 어긋남이나 정보 유출이 허용되지 않는 품질 보증 및 감사 영역에 대한 대응
수동 스크린샷 작업에 어려움을 겪어 만든 도구이며, 동일하게 어려움을 겪고 있는 분들에게 도움이 될지도 모른다는 생각에 Microsoft Store에 공개하고 있습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기