← 포트폴리오 🔍 파싱 · 자동화
RPA · VISION PARSING

SalesAuto — 앱 매크로 레코더 + Claude 비전 파싱

Power Automate처럼 데스크톱 앱의 동작을 녹화·재생하고, Claude 비전으로 화면에서 원하는 데이터를 JSON으로 뽑아내는 Windows용 RPA 도구. 사람이 하던 반복 클릭과 데이터 수기 입력을 자동화합니다.

🐍 Python 🖥️ Windows UI Automation 👁️ Claude Vision 🎛️ Tkinter GUI ⚠️ 데스크톱 앱 · 웹 URL 실행 불가 (로컬 실행 전용)

어떻게 동작하나

녹화 → 비전 파싱 → 재생, 세 단계로 반복 업무를 자동화합니다.

STEP 1
⏺️

동작 녹화

대상 앱에서 평소처럼 클릭·입력하면 UI Automation이 버튼·입력창을 '요소' 단위로 인식해 단계로 기록. 창 위치가 바뀌어도 안정적입니다.

STEP 2
👁️

비전 파싱

"이 화면에서 고객명·전화·주문금액을 추출"처럼 지시하면 스크린샷 → Claude 비전 → JSON으로 구조화. 프롬프트 캐싱으로 비용을 절감합니다.

STEP 3
▶️

재생 · 저장

기록된 단계를 자동 실행하고 파싱 결과를 수집. 매크로는 macros/*.json으로 저장돼 언제든 재사용할 수 있습니다.

⏺️ 녹화  →  📸 스크린샷  →  👁️ Claude 비전  →  🧾 JSON  →  ▶️ 재생
LIVE DEMO · 실시간 시뮬레이션

👆 지금 바로 체험해보세요 — 녹화 → 파싱 → 저장을 직접 실행

설명 화면이 아니라 실제로 클릭하면 돌아가는 데모예요. 아래 '🔴 녹화 시작'을 눌러 3단계 자동화 흐름을 눈으로 확인하세요.

1녹화
2비전 파싱
3저장
ERP 매출현황
날짜거래처품목금액담당자
2026-07-01㈜한국물산사무용품 세트4,200,000김도현
2026-07-01대성유통A4 용지 박스2,850,000박서준
2026-06-30거래처 A레이저 토너6,120,000이지은
2026-06-30거래처 B모니터 암1,740,000최민아
2026-06-29거래처 C무선 키보드3,960,000최담당
👁️ Claude Vision 파싱 중...
▲ '🔴 녹화 시작'을 눌러 체험을 시작하세요

핵심 기술

화면 좌표가 아닌 'UI 요소'를 인식해, 깨지지 않는 자동화를 구현했습니다.

UI Automation · 요소 단위 인식
pynput · 마우스/키보드 전역 후킹
mss + Pillow · 화면 캡처
Claude Vision · 스크린샷→JSON
Prompt Caching · 파싱 비용 절감
Tkinter · 데스크톱 GUI

요소 인식 우선순위

재생 시 클릭 대상을 아래 순서로 찾아, 실패하면 다음 방식으로 폴백합니다.

1AutomationId가장 안정적
2Name + ControlType이름·유형 매칭
3ClassName + Name클래스·이름 매칭
4녹화 당시 좌표최종 폴백

구조

녹화·인식·재생·파싱을 모듈로 분리한 클린 아키텍처.

src/ main.py 진입점 (.env 로드 → GUI) core/ models.py Step / Macro / ElementSelector 데이터 모델 ui_inspector.py 좌표→요소 인식, 셀렉터 재검색 (UI Automation) recorder.py 마우스/키보드 전역 후킹 녹화 (pynput) player.py 단계 재생 (요소 매칭 → 좌표 폴백) screenshot.py 화면 캡처 (mss + Pillow) claude_parser.py 스크린샷 → Claude 비전 → JSON (캐싱) storage.py 매크로 JSON 저장/불러오기 gui/ app.py Tkinter GUI

결과물 — 통합 ERP 대시보드

여러 화면에서 파싱한 데이터를 모아 만든 매출 대시보드입니다. (아래는 실제 산출물, 샘플 데이터)

통합 ERP 대시보드

↑ 매크로 재생으로 수집·파싱한 데이터가 이런 대시보드로 정리됩니다.