안녕하세요 케이입니다.

이번 글은 지금까지 진행한 개인용 뉴스 자동수집 텔레그램 봇 시리즈의 마지막 글입니다.

처음에는 단순히 내가 관심 있는 뉴스를 자동으로 받아볼 수 있으면 좋겠다는 생각에서 시작했습니다.

하지만 하나씩 알아보다 보니 텔레그램 봇, Bot Token, Chat ID, API, Google Apps Script, Webhook, RSS, 중복 제거, 자동 실행, AI 요약 같은 여러 개념을 함께 이해해야 했습니다.

처음에는 각각의 용어가 모두 어렵게 느껴졌지만, 실제로 역할을 하나씩 나눠서 이해하면 전체 구조는 생각보다 단순했습니다.

이번 글에서는 코딩 경험이 거의 없는 초보자 기준에서 개인용 뉴스 수집 봇을 어떤 순서로 만들면 좋은지 처음부터 끝까지 다시 정리해보겠습니다.

가장 먼저 한 일은 전체 구조를 이해하는 것이었다

처음부터 코드를 작성하려고 하면 어디서부터 시작해야 할지 알기 어렵습니다.

그래서 가장 먼저 한 일은 뉴스 자동수집 시스템이 어떤 구조로 작동하는지 이해하는 것이었습니다.

전체 흐름은 다음과 같습니다.

관심 키워드를 정합니다.

뉴스 데이터를 가져옵니다.

필요한 내용만 정리합니다.

중복 뉴스를 제거합니다.

텔레그램 메시지로 만듭니다.

정해진 시간에 자동으로 전송합니다.

필요하다면 AI 요약 기능을 추가합니다.

처음에는 이 흐름만 이해해도 충분합니다.

각 기능은 나중에 하나씩 연결하면 됩니다.

첫 단계는 텔레그램 봇 만들기였다

뉴스 결과를 어디에서 받아볼지 먼저 정해야 했습니다.

저는 텔레그램을 이용하는 방식으로 시작했습니다.

BotFather를 이용하면 개인용 텔레그램 봇을 만들 수 있습니다.

봇 이름과 사용자 이름을 정한 뒤 Bot Token을 발급받으면 기본적인 봇 생성은 완료됩니다.

여기에서 중요한 것은 봇을 만들었다고 바로 뉴스가 자동으로 오는 것은 아니라는 점입니다.

BotFather는 메시지를 보낼 봇 계정을 만들어주는 역할만 합니다.

실제 뉴스 검색과 메시지 전송은 이후 단계에서 별도로 연결해야 합니다.

Bot Token과 Chat ID를 이해하는 과정이 필요했다

텔레그램 봇을 만든 다음에는 Bot Token과 Chat ID를 확인했습니다.

처음에는 두 값의 차이를 이해하기 어려웠습니다.

하지만 역할은 명확합니다.

Bot Token은 어떤 봇을 사용할지 알려주는 인증정보입니다.

Chat ID는 어느 채팅방으로 메시지를 보낼지 알려주는 정보입니다.

뉴스 자동수집 시스템에서는 두 값이 모두 필요합니다.

프로그램이 Bot Token으로 텔레그램 봇을 확인하고, Chat ID를 이용해서 뉴스 메시지를 받을 채팅방을 지정합니다.

다음으로 API가 무엇인지 이해했다

텔레그램 봇을 준비한 뒤에는 실제 뉴스 데이터를 어디에서 가져올지 알아봤습니다.

여기에서 API라는 개념을 처음 접하게 됩니다.

API는 프로그램이 다른 서비스의 데이터를 요청하고 결과를 받아오는 연결 방식입니다.

뉴스 자동수집에서는 특정 키워드와 관련된 뉴스 데이터를 프로그램으로 가져오기 위해 사용합니다.

쉽게 생각하면 사람이 검색창에 직접 검색어를 입력하던 작업을 프로그램이 대신하는 방식입니다.

이 구조를 이해하니 이후 뉴스 자동수집 흐름도 훨씬 쉽게 이해할 수 있었습니다.

뉴스 검색 API를 이용해 원하는 키워드를 검색했다

API의 역할을 이해한 다음에는 뉴스 검색 기능을 연결했습니다.

예를 들어 다음과 같은 검색어를 사용할 수 있습니다.

ChatGPT

AI 자동화

AI 에이전트

로컬 AI

생성형 AI

프로그램이 이 검색어를 순서대로 검색하고 관련 뉴스 결과를 가져오도록 만들 수 있습니다.

처음에는 키워드 하나만 사용해서 정상적으로 결과가 나오는지 확인하는 것이 좋습니다.

한 번에 여러 검색어를 적용하면 문제가 발생했을 때 어느 부분에서 오류가 생겼는지 찾기 어렵기 때문입니다.

Google Apps Script가 전체 시스템을 연결했다

뉴스 검색 API와 텔레그램 봇은 서로 직접 연결되지 않습니다.

중간에서 검색 요청을 보내고 결과를 정리한 뒤 다시 텔레그램으로 전달하는 프로그램이 필요합니다.

이 역할을 Google Apps Script가 담당했습니다.

Google Apps Script는 뉴스 API에서 데이터를 가져옵니다.

가져온 데이터에서 필요한 내용을 선택합니다.

텔레그램 메시지 형태로 정리합니다.

마지막으로 Bot Token과 Chat ID를 이용해서 메시지를 전송합니다.

이 구조를 이해하면 뉴스 자동수집 시스템 전체의 중심이 무엇인지 알 수 있습니다.

처음부터 자동 실행을 설정하지 않았다

자동수집 시스템을 만들고 있다고 해서 처음부터 자동 실행을 적용하지는 않았습니다.

먼저 Google Apps Script에서 직접 실행하면서 각 기능이 정상적으로 작동하는지 확인하는 것이 중요했습니다.

뉴스 검색이 정상적으로 되는지 확인합니다.

검색 결과가 제대로 들어오는지 확인합니다.

텔레그램 메시지가 만들어지는지 확인합니다.

실제로 텔레그램으로 메시지가 도착하는지 확인합니다.

이 과정을 하나씩 확인한 뒤 자동 실행을 추가하는 것이 좋습니다.

Webhook은 필요할 때 추가하면 된다

텔레그램 봇을 만들면서 Webhook이라는 개념도 접하게 됩니다.

처음에는 뉴스 자동수집에 반드시 필요한 기능처럼 보일 수 있습니다.

하지만 단순히 정해진 시간에 뉴스를 자동으로 보내는 목적이라면 Webhook이 없어도 가능합니다.

Webhook은 사용자가 텔레그램에서 명령어를 입력했을 때 프로그램이 즉시 반응하도록 만들 때 유용합니다.

예를 들어 /news라는 명령을 입력하면 바로 최신 뉴스를 검색해서 보내는 기능을 만들 수 있습니다.

따라서 처음에는 기본 뉴스 자동수집부터 완성하고 필요할 때 Webhook을 추가하는 것이 더 단순합니다.

Webhook 302 Found 오류도 경험할 수 있다

Webhook을 Google Apps Script와 연결하면 302 Found 오류 같은 문제를 만날 수도 있습니다.

이때는 무조건 코드 전체가 잘못되었다고 생각하지 않는 것이 좋습니다.

웹 앱 배포 주소가 정확한지 확인합니다.

접근 권한이 올바른지 확인합니다.

Webhook에 등록된 주소와 현재 Google Apps Script 주소가 같은지 확인합니다.

필요하다면 기존 Webhook을 삭제한 뒤 다시 설정합니다.

오류 메시지를 보고 어느 구간에서 문제가 발생했는지 나눠서 확인하는 것이 중요합니다.

여러 키워드를 한 번에 검색하도록 확장했다

기본적인 뉴스 검색이 정상적으로 작동한 뒤 여러 키워드를 자동으로 검색하는 기능을 추가할 수 있습니다.

처음에는 검색어 3개에서 5개 정도가 적당합니다.

프로그램이 첫 번째 검색어를 확인합니다.

검색 결과를 저장합니다.

다음 검색어를 확인합니다.

이 과정을 반복한 뒤 결과를 하나의 텔레그램 메시지로 정리합니다.

이렇게 만들면 매일 여러 검색어를 직접 입력하지 않아도 됩니다.

중복 뉴스 제거가 생각보다 중요했다

여러 키워드를 사용하면 같은 기사가 두 번 이상 검색되는 일이 자주 발생합니다.

예를 들어 한 기사에 ChatGPT와 생성형 AI라는 단어가 모두 포함되어 있으면 두 검색 결과에서 동시에 나올 수 있습니다.

이 상태로 그대로 전송하면 텔레그램에서 같은 뉴스를 반복해서 보게 됩니다.

그래서 기사 제목이나 식별 정보를 기준으로 중복을 제거하는 기능을 추가하는 것이 좋습니다.

또 이전에 이미 보낸 뉴스까지 저장해두면 다음 실행에서 같은 기사가 다시 전송되는 것도 줄일 수 있습니다.

메시지 형식도 단순하게 정리했다

뉴스 자동수집 시스템에서는 데이터를 많이 가져오는 것보다 읽기 편하게 정리하는 것이 중요했습니다.

뉴스 제목과 간단한 설명만 정리해도 충분히 사용할 수 있습니다.

예를 들어 다음과 같은 구조입니다.

오늘의 관심 뉴스

ChatGPT

  1. 뉴스 제목

짧은 설명

AI 자동화

  1. 뉴스 제목

짧은 설명

이렇게 키워드별로 구분하면 필요한 정보만 빠르게 확인할 수 있습니다.

검색 결과가 없는 키워드는 표시하지 않는 방식도 사용할 수 있습니다.

시간 기반 트리거로 자동화를 완성했다

기본 기능이 정상적으로 작동한 뒤 Google Apps Script의 시간 기반 트리거를 추가했습니다.

이제 매번 직접 실행하지 않아도 정해진 시간에 프로그램이 자동으로 실행됩니다.

뉴스 API에서 데이터를 가져옵니다.

중복 뉴스를 제거합니다.

메시지를 정리합니다.

텔레그램으로 전송합니다.

이 과정이 자동으로 반복됩니다.

개인용 뉴스 자동수집 시스템에서 가장 실용적인 단계라고 볼 수 있습니다.

RSS도 함께 사용할 수 있었다

뉴스 검색 API 외에도 RSS라는 방식이 있습니다.

RSS는 특정 사이트의 새로운 콘텐츠를 확인하는 데 유용합니다.

뉴스 API는 검색어를 기준으로 다양한 결과를 가져오는 데 적합합니다.

RSS는 특정 사이트의 새 글을 놓치고 싶지 않을 때 유용합니다.

두 방식을 함께 사용하면 검색 키워드와 특정 출처를 동시에 관리할 수 있습니다.

AI 요약은 마지막에 추가하는 것이 좋았다

뉴스 자동수집을 만들다 보면 AI 요약 기능을 넣고 싶어질 수 있습니다.

하지만 처음부터 AI를 연결할 필요는 없습니다.

먼저 뉴스 검색, 중복 제거, 자동 실행, 텔레그램 전송까지 안정적으로 작동하는 것이 중요합니다.

그다음 필요한 뉴스만 AI에 전달해서 짧게 요약하도록 만들 수 있습니다.

이 순서가 좋은 이유는 불필요한 데이터를 AI에 보내지 않아도 되기 때문입니다.

AI 사용량과 비용을 줄이는 데도 도움이 됩니다.

무료 중심으로도 기본 시스템은 만들 수 있었다

개인용 뉴스 자동수집을 처음 시작할 때 반드시 서버를 직접 운영하거나 많은 비용을 사용할 필요는 없습니다.

텔레그램 봇과 Google Apps Script를 중심으로 시작할 수 있습니다.

뉴스 검색 API나 RSS를 이용해서 데이터를 가져옵니다.

자동 실행 횟수와 키워드 수를 적절하게 관리합니다.

AI 요약은 필요할 때만 추가합니다.

이 정도 구조면 개인용으로 사용할 수 있는 기본 뉴스 수집 시스템을 만들 수 있습니다.

초보자가 가장 먼저 해야 할 것은 코드 공부가 아니다

개인적으로 이 과정을 진행하면서 가장 중요하다고 느낀 것은 처음부터 코드를 모두 이해하려고 하지 않는 것입니다.

코드를 작성하기 전에 각 기능의 역할을 이해하는 것이 더 중요합니다.

BotFather는 봇을 만듭니다.

Bot Token은 봇 인증에 사용합니다.

Chat ID는 메시지를 받을 대상을 지정합니다.

뉴스 API는 데이터를 가져옵니다.

Google Apps Script는 각 기능을 연결합니다.

트리거는 프로그램을 자동으로 실행합니다.

RSS는 특정 사이트의 새 콘텐츠를 확인합니다.

AI는 필요한 경우 뉴스를 요약합니다.

이 역할만 정확하게 구분해도 전체 시스템을 이해하기 훨씬 쉽습니다.

문제가 발생하면 기능을 나눠서 확인한다

자동화 시스템을 만들면 오류가 발생할 수 있습니다.

이때 전체 코드를 한꺼번에 수정하는 것보다 기능을 나눠서 확인하는 것이 좋습니다.

뉴스 검색이 안 된다면 API 부분을 확인합니다.

검색 결과는 있는데 텔레그램이 오지 않는다면 Bot Token과 Chat ID를 확인합니다.

자동 실행이 안 된다면 트리거를 확인합니다.

Webhook 오류가 발생하면 배포 주소와 접근 권한을 확인합니다.

AI 요약이 안 된다면 AI API 연결 부분을 확인합니다.

이렇게 문제를 나눠서 생각하면 오류를 해결하기 훨씬 쉽습니다.

제가 추천하는 초보자 진행 순서

처음부터 다시 만든다면 다음 순서로 진행하는 것이 좋습니다.

  1. 텔레그램 봇 생성
  2. Bot Token 확인
  3. Chat ID 확인
  4. 텔레그램 테스트 메시지 전송
  5. 뉴스 API 기본 개념 이해
  6. 뉴스 검색 API 연결
  7. Google Apps Script에서 검색 결과 확인
  8. 검색 결과를 텔레그램으로 전송
  9. 여러 키워드 추가
  10. 중복 뉴스 제거
  11. 메시지 형식 정리
  12. 시간 기반 자동 실행 설정
  13. 필요한 경우 RSS 추가
  14. 필요한 경우 Webhook 추가
  15. 마지막으로 AI 요약 기능 추가

이 순서라면 한 번에 너무 많은 기능을 다루지 않아도 됩니다.

완성된 뉴스 자동수집 시스템의 모습

최종적으로 만들 수 있는 개인용 뉴스 수집 시스템은 다음과 같이 작동합니다.

매일 정해진 시간이 됩니다.

Google Apps Script가 자동으로 실행됩니다.

등록된 키워드를 뉴스 API에서 검색합니다.

RSS로 등록한 사이트의 새 콘텐츠도 확인합니다.

이전에 받은 뉴스를 제외합니다.

관련 없는 결과를 필터링합니다.

새로운 뉴스만 정리합니다.

필요하다면 AI가 핵심 내용을 요약합니다.

정리된 결과를 텔레그램으로 전송합니다.

사용자는 텔레그램을 열어서 관심 뉴스를 확인합니다.

처음에 생각했던 “원하는 뉴스를 자동으로 받아보는 시스템”이 완성되는 것입니다.

뉴스 자동수집 시스템은 계속 개선할 수 있다

기본 시스템이 완성되었다고 해서 끝은 아닙니다.

실제로 사용하다 보면 필요한 기능이 계속 생길 수 있습니다.

뉴스 키워드를 텔레그램에서 직접 추가하는 기능

중요 뉴스만 선별하는 기능

업무용과 개인용 뉴스를 따로 분류하는 기능

매일 아침 뉴스 브리핑 만들기

주간 뉴스 요약 만들기

특정 기업 뉴스만 별도로 알림 받기

여러 뉴스에서 공통된 내용을 AI가 정리하기

기본 구조만 이해하고 있다면 이런 기능도 하나씩 추가할 수 있습니다.

가장 중요한 것은 실제로 사용하는 시스템을 만드는 것이다

자동화를 만들다 보면 기능 자체를 추가하는 데 집중하기 쉽습니다.

하지만 기능이 많다고 좋은 시스템은 아닙니다.

매일 실제로 확인하는 뉴스가 10개 정도라면 수백 개의 기사를 모을 필요가 없습니다.

하루에 한 번이면 충분하다면 매시간 실행할 필요도 없습니다.

AI 요약 없이도 충분히 편하다면 굳이 비용이 발생하는 기능을 추가할 필요도 없습니다.

자신이 실제로 사용하는 방식에 맞춰 최대한 단순하게 만드는 것이 좋습니다.

정리

코딩 경험이 거의 없는 상태에서도 개인용 뉴스 자동수집 텔레그램 봇은 단계별로 접근하면 충분히 만들어볼 수 있습니다.

처음에는 텔레그램 봇을 만들고 Bot Token과 Chat ID를 확인하는 것부터 시작합니다.

그다음 뉴스 API를 이용해서 원하는 키워드의 데이터를 가져옵니다.

Google Apps Script가 뉴스 데이터를 정리하고 텔레그램으로 전달하는 역할을 합니다.

여기에 여러 키워드 검색, 중복 제거, 메시지 정리, 시간 기반 트리거를 추가하면 실제로 사용할 수 있는 뉴스 자동수집 시스템이 만들어집니다.

필요하다면 RSS를 이용해서 특정 사이트의 새 글을 추가하고 AI를 이용해서 뉴스 내용을 요약할 수도 있습니다.

처음에는 API, Webhook, RSS 같은 단어가 어렵게 느껴질 수 있습니다.

하지만 각각의 역할을 하나씩 나눠서 이해하면 전체 시스템은 생각보다 단순합니다.

이 시리즈에서 가장 중요하게 생각한 부분도 바로 이것입니다.

처음부터 완벽한 자동화 시스템을 만들려고 하지 않고 하나의 기능이 정상적으로 작동하는 것을 확인한 뒤 다음 기능을 추가하는 것입니다.

이렇게 만들어두면 매일 여러 사이트를 방문해서 뉴스를 직접 검색하지 않아도 됩니다.

내가 관심 있는 키워드의 새로운 정보를 자동으로 모으고 텔레그램에서 필요한 내용만 확인할 수 있습니다.

처음에는 작은 뉴스 수집 봇으로 시작하지만 이후 자신의 필요에 따라 업무 정보수집, 경쟁사 뉴스 확인, 기술 동향 브리핑 같은 다양한 개인 자동화 시스템으로 확장할 수 있습니다.

답글 남기기

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

글쓴이

bluekei9@keinote.com

관련 게시물

코딩 하나도 모르던 제가 결국 개인 뉴스 자동화 시스템을 만든 전체 과정

안녕하세요 케이입니다. 처음 이걸 시작할 때만 해도 텔레그램 봇이 정확히 어떻게 움직이는지 잘 몰랐습니다. API라는 말은 많이 들어봤지만 정확히 어떤 역할을 하는지도...

모두 읽어보기

텔레그램 봇 코드를 수정했는데 반영이 안 돼서 직접 원인을 찾아봤습니다

안녕하세요 케이입니다. 텔레그램 봇을 만들면서 꽤 답답했던 문제가 하나 있었습니다. 분명 Google Apps Script에서 코드를 수정했습니다. 저장도 했습니다. 그런데 텔레그램에서 테스트해보면 예전...

모두 읽어보기

텔레그램 뉴스봇이 갑자기 멈췄을 때 초보자인 제가 확인한 순서

안녕하세요 케이입니다. 앞에서는 Google Apps Script의 트리거를 이용해서 정해진 시간에 뉴스가 자동으로 오도록 만들어봤습니다. 자동으로 뉴스가 도착하니까 상당히 편했습니다. 그런데 며칠 사용하다...

모두 읽어보기

매번 검색하기 귀찮아서 자주 보는 뉴스 키워드를 저장해봤습니다

안녕하세요 케이입니다. 앞에서는 텔레그램으로 오는 뉴스 메시지를 조금 더 보기 좋게 꾸며봤습니다. 제목은 굵게 만들고, 설명은 짧게 붙이고, 긴 링크도 기사 보기처럼...

모두 읽어보기

텔레그램 뉴스 메시지가 너무 지저분해서 보기 좋게 꾸며봤습니다

안녕하세요 케이입니다. 앞에서는 텔레그램 뉴스봇에 뉴스 제목뿐만 아니라 간단한 설명까지 같이 표시해봤습니다. 기능 자체는 만족스러웠습니다. 제목만 볼 때보다 내용을 훨씬 빨리 파악할...

모두 읽어보기

뉴스 제목만 오던 텔레그램 봇에 간단한 내용까지 표시해봤습니다

안녕하세요 케이입니다. 앞에서는 텔레그램 뉴스봇에서 관심 없는 단어가 들어간 뉴스는 자동으로 제외하도록 만들어봤습니다. 뉴스 개수도 줄이고, 같은 기사도 어느 정도 걸러내고, 원하는...

모두 읽어보기