Web Automation · Scraping · Data

API가 없어도 데이터는 가져옵니다. 웹 스크래핑 솔루션 MUSCAT

API를 제공하지 않는 웹사이트의 데이터를 안정적으로 수집하는 웹 스크래핑 솔루션. 모듈화된 아키텍처로 OMS·SCM 연동과 반복 업무를 자동화합니다.

Problem · 이런 상황이라면

이런 상황에서 씁니다.

  • 거래처 시스템에 API가 없어 담당자가 매일 로그인해 엑셀을 내려받고 있습니다.
  • 화면 구조가 조금만 바뀌어도 기존 수집 스크립트가 통째로 멈춥니다.
  • 자바스크립트로 그려지는 화면이라 단순 HTML 요청으로는 데이터가 나오지 않습니다.
  • 수집한 데이터를 사내 OMS·SCM에 옮기는 과정이 아직 수작업입니다.
Feature · 핵심 기능

MUSCAT이(가) 하는 일.

실제 브라우저 기반Playwright 엔진으로 안정 수집
자동 수집검색결과·상품정보·파일 추출
프로세스 자동화로그인부터 다운로드까지
시스템 연동OMS · SCM 데이터 파이프라인
MUSCAT 머스캣 화면

실제 브라우저로 수집합니다

MUSCAT은 Playwright 엔진 기반으로 실제 브라우저를 띄워 동작합니다. 자바스크립트로 그려지는 화면, 로그인이 필요한 페이지, 여러 단계를 거쳐야 나오는 데이터도 사람이 직접 클릭하는 것과 같은 순서로 접근합니다. HTML만 긁어오는 방식보다 대상 사이트의 구현 방식에 덜 흔들립니다.

로그인부터 다운로드까지 한 번에

로그인, 검색 조건 입력, 결과 조회, 파일 다운로드로 이어지는 절차를 하나의 작업으로 정의해 자동 실행합니다. 검색결과, 상품정보, 첨부파일 추출처럼 매일 반복되는 일을 사람 손을 거치지 않고 정해진 시각에 처리할 수 있습니다.

모듈화된 구조 — 한 사이트가 바뀌어도 전체가 멈추지 않습니다

대상 사이트별 수집 로직을 모듈로 분리했습니다. 어느 한 곳의 화면이 개편되어도 해당 모듈만 고치면 되고 나머지 수집은 그대로 돌아갑니다. 수집 대상이 늘어날 때도 기존 구조를 건드리지 않고 모듈만 추가합니다. 스크래핑에서 유지보수 비용이 가장 크게 발생하는 지점을 구조로 막아둔 것입니다.

돌려놓고 지켜볼 수 있습니다 — 실시간 제어

스크래핑은 대상 사이트가 조금만 달라져도 중간에 멈추는데, 로그만 남으면 원인을 짐작하는 데 시간이 걸립니다. MUSCAT은 전용 관리 앱과 WebSocket으로 연결되어 있어 실행 중인 작업이 지금 어느 단계에 있는지 보면서 일시정지하고 다시 재개할 수 있습니다. 디버그 모드로 띄우면 처음부터 관리 앱의 명령을 기다리므로, 새 수집 대상을 붙일 때 동작을 하나씩 보내가며 화면 반응을 그 자리에서 확인할 수 있습니다. 문제가 생긴 지점을 추측하지 않고 눈으로 보고 고치는 만큼, 대상이 늘어나도 손이 덜 갑니다.

수집에서 끝나지 않고 시스템으로 연결합니다

수집한 데이터를 OMS·SCM 등 사내 시스템으로 넘기는 파이프라인까지 함께 구성합니다. 수집 — 가공 — 적재가 한 흐름으로 이어지므로 담당자가 중간에 파일을 열어 옮기는 단계가 사라집니다.

Stack · 구현 기술

무엇으로 만들었나.

도입 환경에 붙일 수 있는지 판단하실 수 있도록 구성 기술을 공개합니다.

  • Node.js
  • Playwright
  • WebSocket
  • Electron (관리 앱)
  • Vue.js
  • SheetJS (xlsx)
  • Winston
  • esbuild
Work · 관련 분야 실적

같은 분야에서 이런 일을 했습니다.

해당 솔루션을 그대로 납품한 사례가 아니라, 같은 영역을 다룬 수행 실적입니다.

FAQ · 자주 묻는 질문

MUSCAT 도입 전 확인.

로그인이 필요한 사이트도 수집할 수 있나요?
네. 실제 브라우저를 사용하므로 로그인 후에만 보이는 화면과 다운로드까지 하나의 작업으로 자동화할 수 있습니다.
대상 사이트 화면이 바뀌면 어떻게 되나요?
사이트별 수집 로직이 모듈로 분리되어 있어 해당 모듈만 수정하면 됩니다. 다른 사이트 수집은 영향을 받지 않습니다.
수집한 데이터를 기존 시스템에 넣는 것까지 가능한가요?
네. OMS·SCM 등 사내 시스템으로 넘기는 데이터 파이프라인 구성까지 함께 진행합니다. 대상 시스템의 연동 방식을 확인한 뒤 범위를 제안드립니다.
Contact · 문의

MUSCAT 도입을 검토 중이신가요?

요구사항이 아직 정리되지 않아도 괜찮습니다. 상황을 알려주시면 적합한 범위와 일정을 제안드립니다.