가장 쉬운 재입고 알림 봇 만들기(Power Automate편)

재입고 알림 봇 만들기(python + telegram bot)는 내 블로그에서 가장 많은 사람들이 찾는 포스트이다. 그만큼 많은 사람들이 필요로 하는 기능인 것 같다. 글을 올린지 오래됐고 인터넷 상황도 많이 바뀌어서 간단한 스크래핑 기술은 통하지 않는 사이트들이 점점 늘어나고 있다.

그래서 가장 쉽고, 간단하게 스크래핑을 구현할 수 있는 방법을 소개하려고 한다. Windows의 자동화 툴인 Power Automate를 사용하는 방법이고 실제 브라우저를 이용하기 때문에 스크래핑 방지 기술을 피할 수 있다(방지 기술이 다양해서 걸리는 경우도 있다).

1. Power Automate 설치

Power Automate Desktop을 설치해야 한다. MS 스토어에서 설치할 수 있다. MS Store 링크

설치하고 시작하면 다음과 같은 화면이 나온다. (아마 MS 계정으로 로그인을 해야됐던 것 같다.) 2025년 11월 현재 설치된 버전은 2.62 이다.

Power Automate를 간략히 소개하면 MS에서 만든 자동화 툴이다. 윈도우에서 사용할 수 있으며 창 열기, 클릭, 입력 등 다양한 작업을 지원한다. 개인적으로 꽤 잘 만들어진 도구라고 생각한다. 귀찮고 반복적인 일을 코드 없이 쉽게 자동화할 수 있게 해준다.

 

2. 새 흐름 만들기

파워 오토메이트의 프로그램들은 흐름(flow)라고 부른다. 홈 화면에서 새 흐름을 클릭해서 새로운 프로그램을 만든다. 흐름 이름은 적당한 걸 입력하고 Power Fx 는 일단 필요 없으므로 꺼둔다.

흐름 편집 화면이 나온다. 기능이 많아서 꽤 복잡해 보일 수 있지만 간략히 설명하면 다음과 같다.

  • 작업 : 왼쪽 부분으로 Power Automate에서 할 수 있는 기능들이 표시된다. 여기서 내가 원하는 작업을 찾아서 흐름 편집 창에 추가하면 된다. 드래그&드랍이나 더블 클릭을 하면 추가 된다.
  • 흐름 편집 : 가운데 부분이다. 흐름을 정의하고 편집한다. 하위 흐름으로 구조를 만들 수도 있다.
  • 변수 : 오른쪽 부분으로 흐름에서 사용하는 값들을 볼 수 있는 곳이다. 보통은 닫아놓는다. 문제가 생겼을 때 값들의 변화를 보며 추적하기 위해 사용하기도 한다. 변수 이외에도 UI 요소(쌓여있는 종이 아이콘), 이미지 등의 기능이 오른쪽에 위치한다.

왼쪽 작업 창에서 내가 필요로 하는 걸 찾아서 흐름 편집 창에 작업을 추가하고, 작업들끼리 연결하는 것이 파워 오토메이트의 일반적인 제작 흐름이다.

 

3. 재고 알림을 위한 흐름 구성하기

기본적인 흐름은 다음과 같다.

  1. 새 브라우저 시작(Chrome이나 Edge, Firefox 등) : 상품 페이지나 장바구니, 관심목록 등으로 이동한다.
  2. 웹 데이터 추출 : 핵심 작업이다. 브라우저에서 필요한 정보를 추출한다. 이 부분은 페이지가 어떻게 구성되어 있는지, 어떤 정보를 필요로 하는지에 따라 달라진다.
  3. 알림 조건 체크 : 구매 가능 상태로 바뀌거나 가격이 바뀌었는지 체크한다.
  4. 알림 보내기 : 알림 조건이 맞으면 알림을 보낸다.

그리고 전체 흐름을 반복하면 된다. 반복은 여러 가지 옵션이 있는데 그중 가장 기본은 반복 조건이고 숫자 카운트가 필요하면 반복을 사용할 수 있다. 프로그래밍에서는 while과 for에 해당한다.

흐름의 1번과 4번은 대부분 동일할 것이다. 실제로 구성한 모습은 다음과 같다.

반복이 들어가 있어서 조금 복잡해졌는데 중요한 부분은 그림 왼편의 숫자 기준으로 3, 4, 5번 뿐이다.

  1. 브라우저를 시작하고 특정 주소로 이동한다. 상품 페이지가 될 수도 있고, 장바구니, 관심 목록이 될 수 있을 것이다. 여기서는 특정 상품의 페이지로 했다.

  2. 알림 조건을 확인한다. 지금은 일시품절이 아닌 경우(즉 구매 가능한 경우)에 그 내부의 흐름을 타도록 해놨다. 브라우저 자동화에 있는 웹 페이지가 다음을 포함하는 경우라는 작업을 사용했다.

  3. 여기서는 간단히 메시지 창이 뜨도록 해놨다. 메신저와 연동을 한다면 여기에서 메시지를 보내는 프로그램을 실행하면 될 것이다.

6번 작업은 반복을 중단하기 위한 것이다. 8번은 창을 닫고 새로 열기위한 부분인데 여기서는 반복 안에서 창을 열었기 때문에 꼭 필요하다. 반복 밖에서 창을 열었다면 필요 없다. 9번은 5분간 대기하기 위한 것이다. 너무 자주 요청을 보내면 공격으로 판단을 하고 IP를 차단할 수 있기 때문이다.

한 가지 사례로 디테일하게 알아보려고 한다. 샘플 사이트는 이번에도 레고로 했다. 입고 체크와 가격 변동 체크 두 가지를 다뤄보려고 한다.

 

4. 사례 – 입고 체크하기

앞의 예시와 같이 구성하면 된다. 웹 페이지에서 데이터 추출은 핵심 작업인데 이러한 자동화 툴에 익숙하지 않으면 어려울 수 있다. 단계별로 자세하게 설명을 하면 다음과 같다.

  1. Power Automate에서 사용하는 브라우저와 같은 브라우저(여기서는 Microsoft Edge)를 열고 상품 페이지로 이동한다.
  2. 페이지와 연결할 작업을 편집한다. 여기서는 웹 페이지가 다음을 포함하는 경우 작업 이다. 웹 페이지가 포함하는지 확인 부분은 요소 포함하지 않음 을 선택한다. 편집 창이 열리면 UI 요소 추가를 선택한다.
  3. 다시 브라우저로 이동하면 UI 요소 선택기가 보일 것이다(그림에서는 라이브 웹 도우미 라고 표시되어 있다). 이 창은 HTML을 모르더라도 추출하려는 데이터를 쉽게 선택할 수 있게 해준다.
  4. 체크해야 할 값 위에 마우스 포인터를 올려둔다. 지금은 일시품절 이라는 값을 보고 구입 가능 상태를 체크하려고 한다. UI 요소 선택기의 안내대로 Ctrl + 클릭을 한다.
  5. 잘 설정이 되었으면 다음 그림과 같을 것이다. 웹 페이지에 “일시품절” 이라는 텍스트가 있는지 검사하고 없을 경우 안쪽 작업이 실행된다.

스크린샷으로 설명하기 좀 복잡해서 영상으로 녹화를 했다.

다음에는 여러 아이템의 가격 변동을 감지하는 진행해보려고 한다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다