[Notion][Make] Youtube 구독 채널 신규 영상 RSS Feed로 확인/요약/발송

1. 프로젝트 개요/배경

지피터스 사례글 DB 자동화를 하려다 보니 Make에 좀 더 친숙해져야겠다 싶어서,
공부 차원에서 Case가 많은 유튜브 요약(구독하는 채널의 신규 영상을 매일 아침 텔레그램 전달) 자동화를 시도했습니다.
추후 사례게시글에 활용을 위해 Youtube API 활용보다는 RSS Feed를 기반으로 Notion을 데이터 저장소로 활용하고,Make에서 자동화를 설정하는 방식으로 진행했습니다.

[활용한 AI 도구]

  • ChatGPT & Google AI Studio: Make 시나리오 설정 및 문제 해결을 위한 자문 역할

  • Apify: 유튜브 데이터 스크래핑

  • Make (구 Integromat): 전체 자동화 시나리오 설정

    다양한 유형의 소셜 미디어 아이콘을 보여주는 다이어그램
  • Notion: DB로 활용 - (DB1) 구독 채널 List, (DB2) 신규 영상/요약문 List

    검은 색 화면의 한국어 목록
    한국 달력의 스크린 샷


2. 진행 방법 및 해결 과정

(1) 주요 도전 과제 및 해결 과정

1.1 Notion에서 유튜브 채널 목록(DB1)을 RSS Feed와 연동하기

다양한 유형의 RSS 피드를 보여주는 다이어그램
  • 문제: Notion에서 저장된 구독 채널 데이터(채널ID)를 가져올 때, Notion 모듈의 Search 기능을 쓰면 데이터가 Collection 타입으로 반환되는데, RSS Feed는 Array 타입만 인식을 함.

  • 해결: 이를 Array Aggregator를 활용하여 Notion 데이터를 Array로 변환한 후, RSS Feed에서 '채널ID'만 추출하여 채널별 업데이트를 확인.
    ** Group by 까지는 불필요한 듯 하나, 이후 Key로 별도 추출이 되길래 편의를 위해 사용해봤습니다.
    ** 뒤에서 언급하겠지만, Search로는 Search Object를 Database Items로 설정해도
    Database ID까지만 조회되고 Database 'Item' ID는 조회가 안됩니다.

    항목 목록을 보여주는 웹 페이지의 스크린 샷

1.2 Iterator를 활용한 반복 처리

  • 문제: Make에서 Notion의 채널 리스트를 불러와 개별 채널을 순차적으로 처리하는 과정에서 시행착오 발생.

  • 해결: Make의 Iterator 모듈을 활용하여 반복 실행 가능하도록 구성.

    • AI마다 설명에 일부 차이가 있어, GPT 및 구글 AI Studio를 통해 교차 검증 및 에러코드 검색해가며 해결.

      항목 목록을 보여주는 녹색 화면

1.3 Apify 스크립트 실행 중 타임아웃 문제

  • 문제: Apify에서 유튜브 영상 정보를 스크래핑하는 과정에서 슬립 타임을 걸었더니, 무료 플랜의 전체 실행 타임아웃(5분? 테스트 시에는 10분?) 제한에 걸려 실행이 중단됨.

  • 해결: Sleep을 줄이면 요약문 자체가 Skip되는 경우가 많아서 결국 Apify 유료 플랜을 구독하여 해결하려 합니다.

    '시나리오가 최대 실행 시간 초과 5 분 경과로 중지되도록 요청 된 메시지의 스크린 샷

1.4 Notion 데이터베이스 간 업데이트 문제

  • 문제:

    • 구독 채널 목록 (DB1)과 신규 업로드 영상/요약문 리스트(DB2) 데이터를 관리하는 과정에서,

    • DB2에 신규 영상이 추가되면 DB1에서 해당 채널을 찾아 ‘최근 작업 날짜’ 칼럼의 값을 업데이트하려 했으나, (그래야 다음 RSS Feed 시, 새로운 날짜 기준으로 Tracking)

    • Notion에서 특정 항목의 Item ID를 동적으로 추출하는 것이 어려움. (Create 등의 Action을 해야 Item ID 변수가 활성화 됨)

      노란색 화살표가 숫자를 가리키는 검은 색 화면
  • (현재 미해결): Make에서 Create를 하지 않은 Notion 데이터를 불러오기가 어렵고, DB@와의 관계성으로 해결책을 찾는 중. (노션의 DB로서의 한계? 내 지식의 한계?)
    일단 업데이트 일자는 매일 수기로 일괄 업데이트 중. (이것도 칼럼 전체 적용은 안되나요ㅠ)

  • 대안 고려 중: 스터디 종료 이후에는 Notion 대신 Google Sheets 등 구글 패밀리 활용 가능성 검토 중.


(2) 최종 구현 결과

텔레그램으로 신규 업로드 영상 요약문 자동 전달까지는 성공!

(3) 추가로 개선할 점

✅ 다음 단계에서 해결하고자 하는 문제들

  1. 유튜브-텔레그램 앱 공유 시 Notion 자동 업데이트 (별도 시나리오 추가)

    • 특정 유튜브 채널을 텔레그램에서 app to app으로 공유했을 때, Make가 이를 감지하여 Notion DB에 자동 추가하는 기능. (바로 다음 사례게시글 작성 예정.)

    • 채널명 추출을 위해 HTTP 요청을 활용하려 했으나, 유튜브 채널 페이지가 동적으로 로드되어 문제 발생. (Youtube 채널 페이지 동적 로딩으로, URL에서 채널 ID 추출은 쉽지만 제목 등 기타 채널 정보 추출을 위한 소스 크롤링 이슈 해결 필요)

    • 해결책: 동적 로딩 페이지의 크롤링을 위한 Selenium(?) 까지 영역 확장 or 간단히(?) Youtube API 활용 검토 중.

  2. Notion DB 간 동적 업데이트 문제 해결

    • 위에서 언급한 1.4 문제를 Make 또는 다른 대체 솔루션(Google Sheets)으로 해결할 방안 모색 중.

  3. Youtube API/Gemini를 활용하여 더욱 간결한 워크플로우 구성

    • RSS Feed 대신 Youtube API를 사용하면 보다 안정적이고 효율적인 데이터 수집 가능.

    • Gemini는 Youtube 링크 주면 바로 스크립트 추출/요약 해주는 것 같아요?

    • DB도 Google Sheets를 쓰면 Sheet간 관계성 확보(Join) 및 조건 검색(vlookup) 등이 용이할 듯 합니다.


3. 배운 점과 향후 계획

💡 배운 점

  • Make 자동화에서 데이터 형식 변환(Array vs Collection)이 핵심!

  • Iterator 및 데이터 필터링 로직을 정확히 이해해야 효율적인 자동화 가능.

  • Notion은 데이터 저장 및 관리에는 유용하지만, DB간 연결을 통한 동적 업데이트가 어려울 수 있음.

  • 유료 툴(Apify, Make 등)을 활용해야 보다 안정적인 자동화가 가능함.

🚀 향후 계획

  • 텔레그램 Bot을 더욱 정교하게 설정하여 사용자 인터랙션 강화

  • Notion에서 동적 업데이트 방법 찾아보기 (안되면 Google로!)


마무리하며

이번 프로젝트를 통해 Make 자동화, Notion 데이터 관리, 유튜브 데이터 수집 및 텔레그램 메시지 전송까지 하나의 완전한 워크플로우를 구축하는 경험을 했습니다. 여전히 몇 가지 미해결 과제가 남아 있지만, 앞으로 개선해 나가면서 더욱 최적화된 자동화 시스템을 만들 계획입니다.

1
7개의 답글

👉 이 게시글도 읽어보세요