구글 트렌드 RSS 피드와 n8n을 연동해 매일 아침 '조회수 급상승 키워드'만 요약하여 슬랙으로 받는 법
매일 아침 출근하자마자 하는 일 중 하나는 ’지금 사람들이 무엇에 관심을 두고 있는가’를 파악하는 것입니다. 콘텐츠 마케터, 블로거, PD 등 대중의 반응에 민감한 직업군일수록 구글 트렌드(Google Trends) 확인은 필수적인 루틴입니다.
하지만 매일 사이트에 직접 접속해 키워드를 분석하고 메모하는 일은 생각보다 번거롭습니다. 바쁜 아침 업무에 치이다 보면 타이밍을 놓치기 일쑤고, 결국 하루 이틀 거르다 보면 트렌드의 흐름을 놓치게 됩니다.
이 문제를 해결하기 위해 가장 추천하는 방법이 바로 구글 트렌드 n8n 자동화입니다. 구글이 2025년 7월 공식 구글 트렌드 API(v1alpha)를 발표하긴 했지만, 아직은 신청을 통해 선정된 일부 테스터에게만 제한적으로 제공되고 있어 일반적으로는 접근이 어렵습니다. 이 글에서는 누구나 접근 가능한 무료 RSS 피드와 오픈소스 자동화 툴인 n8n을 연동해 매일 아침 원하는 시간에 슬랙(Slack)으로 ’조회수 급상승 키워드 요약 리포트’를 받아보는 파이프라인 구축법을 상세히 소개합니다.
툴 비교: 왜 하필 n8n일까?
업무 자동화를 고민할 때 Zapier나 Make(구 Integromat)를 먼저 떠올리는 경우가 많습니다. 하지만 매일 주기적으로 데이터를 수집하고 정제해야 하는 ‘트렌드 모니터링’ 업무에는 n8n이 비용과 자유도 측면에서 압도적인 우위를 점합니다.
| 비교 항목 | Zapier | Make | n8n (Self-hosted) |
|---|---|---|---|
| 무료 플랜 제한 | 월 100회 실행 (매우 부족) | 월 1,000회 실행 | 제한 없음 (서버 자원이 허용하는 한 무제한) |
| 실행 주기 제한 | 최소 15분 (무료 기준) | 최소 15분 | 초 단위 설정 가능 (Cron 방식) |
| 데이터 가공 (JS) | 유료 플랜에서만 코드 노드 지원 | 자체 함수만 지원 (복잡한 가공 어려움) | JavaScript/Python 완벽 지원 (기본 노드 제공) |
| 예상 유지 비용 | 최소 월 $19.99 이상 | 최소 월 $9 이상 | 저사양 VPS/클라우드 인스턴스 1대 비용 (사양·리전에 따라 편차가 크므로 직접 견적을 비교해 보는 것을 권장) |
구글 트렌드 키워드를 매일 수집하고 정제하는 워크플로우는 한 번 실행될 때마다 여러 개의 루프(Loop)와 조건문 노드를 거치게 됩니다. Zapier나 Make를 쓰면 한 달 치 무료 할당량이 일주일도 안 되어 소진되지만, n8n을 직접 호스팅해 사용하면 추가 비용 없이 무제한으로 구동할 수 있습니다.
구글 트렌드 데이터를 수집하는 가장 우아한 방법
앞서 언급했듯 구글의 공식 트렌드 API(v1alpha)는 아직 일부 테스터에게만 제한적으로 열려 있어, 일반적으로는 신청해도 바로 쓸 수 없습니다. 한때 대안으로 많이 쓰이던 파이썬의 pytrends 라이브러리도 2025년 4월부로 유지보수가 중단(GitHub 저장소 아카이브)되었고, 구글 트렌드 쪽 구조 변경으로 주요 기능이 더 이상 정상 작동하지 않으므로 더 이상 추천하기 어렵습니다.
우리가 활용할 가장 안정적이고 합법적인 우회로는 구글 트렌드 Daily Search Trends RSS 피드입니다. 구글은 국가별 급상승 검색어 데이터를 XML 형식의 RSS 피드로 실시간 제공하고 있습니다.
- 대한민국 기준 RSS 주소:
https://trends.google.com/trending/rss?geo=KR
이 RSS 피드는 구글이 공식적으로 노출하는 경로이므로 IP 차단 걱정이 전혀 없으며, n8n의 기본 노드인 Read RSS Feed를 사용해 단 1초 만에 JSON 데이터로 변환할 수 있습니다.
n8n 기반 4단계 자동화 워크플로우 설계
전체적인 파이프라인은 다음과 같이 구성됩니다. 단순히 키워드만 나열하는 것이 아니라, 해당 키워드의 대략적인 검색량과 관련 뉴스 링크까지 함께 추출해 슬랙 메시지 가독성을 극대화합니다.
[Cron Trigger (매일 아침 8시)]
▼
[HTTP Request / RSS Read (구글 트렌드 RSS 수집)]
▼
[Code Node (데이터 가공 & 필터링)]
▼
[Slack Node (슬랙 채널 전송)]
1단계: 매일 아침 트리거 설정 (Cron)
n8n 워크플로우의 첫 시작은 Schedule Trigger 노드입니다. 매일 아침 출근 직후인 오전 8시 또는 8시 30분에 리포트를 받아볼 수 있도록 트리거를 설정합니다.
- Trigger Interval:
Daily - Time:
08:00(원하는 아침 시간 설정)
2단계: RSS Feed 데이터 가져오기
HTTP Request 노드 또는 Read RSS Feed 노드를 추가합니다. URL 입력창에 앞서 언급한 대한민국 구글 트렌드 RSS 주소(https://trends.google.com/trending/rss?geo=KR)를 입력합니다.
성공적으로 호출되면 다음과 같은 구조의 JSON 데이터들이 배열 형태로 반환됩니다.
title: 급상승 키워드명ht:approx_traffic: 대략적인 검색량 (예: 10,000+, 50,000+)description: 관련 뉴스 타이틀 및 요약pubDate: 발행 일시
3단계: JavaScript로 슬랙 맞춤형 데이터 정제 (Code Node)
구글 트렌드 RSS 데이터에는 HTML 태그와 불필요한 메타데이터가 섞여 있습니다. 이를 슬랙의 마크다운(Markdown) 문법에 맞게 깔끔하게 다듬어주는 작업이 필요합니다. n8n의 Code 노드(Run JavaScript)를 생성하고 아래 코드를 삽입합니다.
// n8n Code 노드에 입력할 예시 코드
const items = $input.all();
let formattedText = "*📅 오늘의 구글 트렌드 급상승 키워드 요약*\n\n";
items.slice(0, 10).forEach((item, index) => {
const title = item.json.title;
// 구글 RSS 특유의 네임스페이스 값을 가져옴
const traffic = item.json['ht:approx_traffic'] || '조회수 정보 없음';
const newsTitle = item.json.description ? item.json.description.replace(/<[^>]*>?/gm, '') : '관련 뉴스 없음';
const link = item.json.link;
formattedText += `${index + 1}. *${title}* (🔥 검색량: ${traffic})\n`;
formattedText += `👉 뉴스: _${newsTitle}_\n`;
formattedText += `🔗 <${link}|트렌드 홈에서 확인하기>\n\n`;
});
return [{ json: { slackMessage: formattedText } }];
이 코드는 수많은 검색어 중 상위 10개 키워드만 추려내고, 검색량 정보와 관련 뉴스 헤드라인을 깔끔한 줄바꿈과 이모지를 섞어 하나의 슬랙 메시지 본문으로 변환해 줍니다.
4단계: 슬랙 인커밍 웹훅(Incoming Webhook) 전송
마지막으로 Slack 노드를 연결합니다.
- Authentication:
Webhook방식을 선택하거나, Slack Bot Token을 등록합니다. - Resource:
Message - Operation:
Post - Text:
{{ $json.slackMessage }}(이전 단계의 Code 노드 출력값을 바인딩합니다.)
이제 모든 설정이 완료되었습니다. 워크플로우를 활성화(Active)하면 매일 아침 설정한 시간에 슬랙의 지정된 채널로 아래 그림과 같은 깔끔한 요약 리포트가 자동으로 배달됩니다.
실제로 운영하며 마주친 문제점과 트러블슈팅
아무리 설정을 잘 해두어도 시스템을 운영하다 보면 크고 작은 장애 요소가 발생합니다. 실제 자동화 시스템을 구축하고 안정화하는 과정에서 확인된 주의 사항들을 공유합니다.
1. 동일한 키워드의 중복 필터링 이슈
구글 트렌드는 실시간으로 업데이트되기 때문에, 아침 8시에 조회한 데이터와 전날 밤에 조회한 데이터가 겹칠 수 있습니다. 매일 완전히 새로운 키워드만 보고 싶다면 n8n 내부의 Compare Datasets 노드나 Redis/Database 노드를 활용해 기존에 수집했던 키워드 이력을 저장해 두고, 중복된 키워드는 걸러내는 필터링 로직을 중간에 추가하는 것이 좋습니다.
2. 구글 RSS의 네임스페이스 파싱 오류
n8n 버전이나 XML 파서 라이브러리에 따라 구글 트렌드 특유의 확장 태그인 ht:approx_traffic 또는 ht:news_item을 제대로 인식하지 못하고 누락시키는 경우가 간혹 발생합니다. 이때는 HTTP Request 노드를 통해 Raw XML 데이터를 직접 받아온 뒤, XML 노드를 거치거나 자바스크립트의 정규식(Regex)을 이용해 필요한 텍스트만 강제로 추출하는 방식으로 우회할 수 있습니다.
3. 워크플로우 작동 안정성 확보
외부 웹 서비스(Google, Slack)와 통신하는 자동화는 언제든 네트워크 일시 오류로 중단될 수 있습니다. 실행 성공률과 에러 발생 빈도는 호스팅 환경과 네트워크 상태에 따라 달라지므로, 워크플로우 실행 로그를 일정 기간 직접 모니터링해 보는 것이 정확합니다. 이를 방지하기 위해 n8n 노드 설정 중 Error Trigger를 활성화해 두어, 오류 발생 시 관리자에게 즉시 슬랙 다이렉트 메시지(DM)가 가도록 예외 처리를 해두는 것이 안전합니다.
맺음말: 자동화를 넘어선 트렌드 활용법
구글 트렌드 n8n 자동화 구축은 단순한 ’정보 수집 시간 단축’을 넘어, 남들보다 빠르게 대중의 관심사를 선점하는 강력한 무기가 됩니다.
여기서 한 걸음 더 나아가고 싶다면, 수집된 키워드를 n8n의 OpenAI(GPT-5.1) 노드로 보내 “이 키워드들 중에서 우리 브랜드/블로그 카테고리에 맞는 글감 소재 3가지를 뽑아주고, 초안 아웃라인을 마크다운으로 작성해 줘”라는 프롬프트를 실행하도록 워크플로우를 확장해 보세요. 매일 아침 슬랙을 열었을 때, 단순 키워드 나열이 아니라 **‘오늘 당장 써야 할 블로그 글감과 기획서’**가 도착해 있는 놀라운 생산성 혁신을 경험하게 될 것입니다.