안녕하세요 케이입니다.

지난 글에서는 네이버 뉴스 검색 API와 텔레그램 봇을 어떤 구조로 연결하는지 알아봤습니다.

이번 글에서는 그 중간에서 중요한 역할을 하는 Google Apps Script를 이용해 뉴스 자동수집 봇을 만드는 방법을 정리해보겠습니다.

뉴스 자동수집 시스템을 처음 만들 때는 네이버 검색 API와 텔레그램 봇만 연결하면 된다고 생각하기 쉽습니다.

하지만 실제로는 두 서비스를 연결하고, 검색 결과를 정리하고, 텔레그램으로 다시 보내는 중간 프로그램이 필요합니다.

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

처음에는 이름부터 어렵게 느껴질 수 있지만, 뉴스 자동수집이라는 목적에 맞춰서 보면 이해하기 어렵지 않습니다.

Google Apps Script란 무엇인가

Google Apps Script는 구글에서 제공하는 스크립트 기반 자동화 도구입니다.

쉽게 설명하면 브라우저에서 간단한 프로그램을 작성하고 실행할 수 있는 환경이라고 생각하면 됩니다.

별도의 프로그램을 컴퓨터에 설치하지 않아도 사용할 수 있고, 구글 계정으로 프로젝트를 만들어 코드를 실행할 수 있습니다.

뉴스 자동수집 시스템에서는 다음과 같은 역할을 담당합니다.

네이버 뉴스 검색 API에 검색 요청 보내기

검색 결과 받아오기

뉴스 제목과 설명 정리하기

텔레그램 메시지 만들기

텔레그램 봇으로 결과 전송하기

정해진 시간에 자동 실행하기

즉 Google Apps Script는 뉴스 검색과 텔레그램 전송 사이를 연결하는 핵심 도구입니다.

뉴스 자동수집에 Google Apps Script를 사용하는 이유

뉴스 자동수집 시스템을 만들기 위해 반드시 Google Apps Script만 사용해야 하는 것은 아닙니다.

다른 프로그래밍 언어나 자동화 도구를 사용할 수도 있습니다.

하지만 처음 자동화를 시작하는 사람에게 Google Apps Script는 몇 가지 장점이 있습니다.

먼저 별도의 서버를 직접 운영하지 않아도 됩니다.

컴퓨터를 계속 켜두지 않아도 구글 환경에서 스크립트를 실행할 수 있습니다.

또한 시간 기반 트리거 기능을 사용할 수 있기 때문에 매일 특정 시간에 자동으로 뉴스를 검색하도록 만들 수 있습니다.

처음에는 수동으로 실행하면서 테스트하고, 기능이 정상적으로 작동하면 자동 실행으로 확장할 수 있다는 점도 편리합니다.

새 Google Apps Script 프로젝트 만들기

뉴스 자동수집 봇을 만들려면 먼저 새로운 Google Apps Script 프로젝트를 준비해야 합니다.

구글 계정으로 Google Apps Script 환경에 들어간 뒤 새 프로젝트를 생성합니다.

처음 프로젝트를 만들면 기본적인 코드 편집 화면이 나타납니다.

여기에서 뉴스 자동수집에 필요한 코드를 작성하게 됩니다.

프로젝트 이름은 나중에 쉽게 찾을 수 있도록 목적이 분명한 이름으로 정하는 것이 좋습니다.

예를 들어 다음과 같은 형태로 정할 수 있습니다.

뉴스 자동수집 봇

Telegram News Bot

AI 뉴스 수집

개인 뉴스 자동화

프로젝트를 여러 개 만들게 되면 비슷한 이름이 많아질 수 있기 때문에 어떤 용도로 사용하는지 바로 알 수 있는 이름이 좋습니다.

처음에는 하나의 기능만 만들어보는 것이 좋다

뉴스 자동수집 시스템을 처음 만들 때 가장 흔한 실수 중 하나가 모든 기능을 한꺼번에 넣는 것입니다.

예를 들어 처음부터 다음 기능을 모두 넣으려고 할 수 있습니다.

뉴스 검색

여러 키워드 처리

중복 제거

텔레그램 전송

자동 실행

AI 요약

이렇게 한꺼번에 만들면 오류가 발생했을 때 어느 부분에서 문제가 생겼는지 확인하기 어렵습니다.

처음에는 네이버 뉴스 검색 API에서 데이터가 정상적으로 들어오는지만 확인하는 것이 좋습니다.

그다음 텔레그램 전송 기능을 연결하고, 마지막에 자동 실행 기능을 추가하는 방식이 이해하기 쉽습니다.

Google Apps Script에서 필요한 기본 정보

뉴스 자동수집 시스템을 만들기 위해서는 몇 가지 정보를 미리 준비해야 합니다.

네이버 Client ID

네이버 Client Secret

텔레그램 Bot Token

텔레그램 Chat ID

검색할 뉴스 키워드

이 값들을 Google Apps Script에서 사용하게 됩니다.

처음에는 코드 안에 직접 입력해서 테스트할 수 있습니다.

하지만 장기적으로 사용할 계획이라면 인증정보를 별도로 관리하는 방법을 사용하는 것이 좋습니다.

특히 Bot Token이나 Client Secret처럼 중요한 정보는 외부에 공개되지 않도록 주의해야 합니다.

네이버 뉴스 검색 기능부터 연결한다

Google Apps Script에서 가장 먼저 할 일은 네이버 뉴스 검색 API에 요청을 보내는 것입니다.

검색어를 하나 정하고 해당 검색어를 API에 전달합니다.

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

AI 자동화

Google Apps Script는 이 검색어를 네이버 뉴스 검색 API에 전달하고 결과를 받아옵니다.

이때 Client ID와 Client Secret을 인증정보로 함께 전달해야 합니다.

검색 결과가 정상적으로 들어오는지 먼저 확인하는 것이 중요합니다.

텔레그램 전송 기능을 연결하기 전에 뉴스 데이터가 제대로 들어오는지부터 확인해야 이후 문제를 구분하기 쉽습니다.

뉴스 검색 결과에서 필요한 데이터만 가져온다

네이버 뉴스 검색 API에서 반환되는 결과에는 여러 정보가 포함될 수 있습니다.

이 데이터를 그대로 사용하면 텔레그램 메시지가 복잡해질 수 있습니다.

그래서 필요한 정보만 선택하는 과정이 필요합니다.

처음에는 다음과 같은 항목만 사용해도 충분합니다.

뉴스 제목

간단한 설명

게시 시간

필요한 경우 기사 관련 정보

Google Apps Script에서는 검색 결과를 하나씩 확인하고 필요한 항목만 선택할 수 있습니다.

예를 들어 검색 결과가 5개라면 각 뉴스 제목과 설명을 하나의 메시지로 정리하는 방식입니다.

텔레그램으로 보낼 메시지를 만든다

뉴스 데이터를 가져왔다면 다음 단계는 텔레그램에 보낼 메시지를 만드는 것입니다.

처음에는 최대한 단순하게 만드는 것이 좋습니다.

예를 들어 다음과 같은 형태로 정리할 수 있습니다.

오늘의 AI 자동화 뉴스

  1. 첫 번째 뉴스 제목

간단한 설명

  1. 두 번째 뉴스 제목

간단한 설명

  1. 세 번째 뉴스 제목

간단한 설명

처음부터 많은 정보를 넣기보다 필요한 내용만 확인할 수 있도록 구성하는 것이 좋습니다.

나중에는 날짜나 분류 정보를 추가할 수 있습니다.

중요한 것은 메시지가 실제로 읽기 편한지입니다.

텔레그램 Bot Token과 Chat ID를 사용한다

Google Apps Script에서 뉴스 메시지를 만들었다면 텔레그램 봇으로 전송해야 합니다.

이때 앞에서 확인한 Bot Token과 Chat ID를 사용합니다.

Bot Token은 어떤 텔레그램 봇을 사용할지 결정합니다.

Chat ID는 어느 채팅방으로 메시지를 보낼지 결정합니다.

Google Apps Script에서 텔레그램 전송 요청을 실행하면 정리된 뉴스 내용이 지정된 채팅방으로 전달됩니다.

이 단계까지 정상적으로 작동하면 뉴스 자동수집 시스템의 기본 기능은 거의 완성된 것입니다.

처음에는 직접 실행해서 테스트한다

자동수집이라고 해서 처음부터 자동 실행을 설정할 필요는 없습니다.

먼저 Google Apps Script에서 직접 실행해서 결과를 확인하는 것이 좋습니다.

처음 테스트할 때는 다음 항목을 확인합니다.

뉴스 API 호출이 정상적으로 되는지

검색 결과가 들어오는지

뉴스 제목과 설명이 제대로 정리되는지

텔레그램으로 메시지가 도착하는지

이 네 가지를 순서대로 확인합니다.

어느 단계에서 문제가 발생했는지 구분하기 쉬워집니다.

실행 권한 요청이 나올 수 있다

Google Apps Script를 처음 실행하면 권한 요청 화면이 나타날 수 있습니다.

외부 서비스에 요청을 보내거나 구글 계정과 연결된 기능을 사용할 때 필요한 과정입니다.

처음에는 경고처럼 보여서 당황할 수 있지만, 자신이 만든 스크립트를 직접 실행하는 경우 어떤 권한을 요청하는지 확인하고 진행하면 됩니다.

다만 출처를 알 수 없는 코드를 그대로 복사해서 사용할 때는 어떤 작업을 수행하는 코드인지 먼저 확인하는 것이 중요합니다.

특히 인증정보를 외부로 전송하는 코드가 포함되어 있지 않은지 확인하는 것이 좋습니다.

Google Apps Script에서 오류가 나면 어떻게 확인할까

자동화 코드를 처음 작성하면 오류가 발생할 수 있습니다.

이 경우 한 번에 전체 코드를 수정하기보다 어느 단계에서 문제가 생겼는지 확인하는 것이 중요합니다.

예를 들어 뉴스 검색 결과가 전혀 들어오지 않는다면 네이버 API 인증정보나 검색 요청 부분을 확인해야 합니다.

뉴스 데이터는 들어오는데 텔레그램 메시지가 오지 않는다면 Bot Token이나 Chat ID를 확인해야 합니다.

메시지는 오지만 글자가 이상하게 보인다면 데이터 정리 과정에 문제가 있을 수 있습니다.

기능을 나눠서 확인하면 오류를 찾기가 훨씬 쉬워집니다.

로그 기능을 활용하면 문제를 찾기 쉽다

Google Apps Script에서는 프로그램이 어떤 값을 처리하고 있는지 확인할 수 있는 로그 기능을 사용할 수 있습니다.

예를 들어 뉴스 검색 API에서 실제로 어떤 데이터가 들어오는지 확인하고 싶을 때 로그를 남길 수 있습니다.

검색 결과가 비어 있는지

오류 메시지가 있는지

뉴스 제목이 정상적으로 들어오는지

이런 내용을 확인할 수 있습니다.

자동화를 처음 만들 때 로그는 매우 유용합니다.

프로그램이 눈에 보이지 않는 상태에서 실행되기 때문에 어느 단계까지 정상적으로 진행되었는지 확인하는 데 도움이 됩니다.

시간 기반 트리거로 자동 실행할 수 있다

기본 기능이 정상적으로 작동한다면 이제 자동 실행을 설정할 수 있습니다.

Google Apps Script에서는 트리거 기능을 이용해서 특정 시간에 스크립트를 실행할 수 있습니다.

예를 들어 매일 아침 뉴스를 확인하고 싶다면 정해진 시간에 뉴스 수집 함수가 실행되도록 설정할 수 있습니다.

자동 실행이 시작되면 사용자가 직접 프로그램을 실행할 필요가 없습니다.

Google Apps Script가 정해진 시간에 뉴스 검색 API를 호출하고 결과를 텔레그램으로 전달합니다.

이때부터 뉴스 자동수집이라는 이름에 맞는 시스템이 만들어집니다.

처음에는 하루 한 번 정도로 시작하는 것이 좋다

자동 실행을 설정할 때 너무 짧은 간격으로 반복하도록 만들 필요는 없습니다.

개인용 뉴스 수집이라면 처음에는 하루 한 번 또는 필요에 따라 몇 번 정도로 시작하는 것이 좋습니다.

API 사용량도 줄일 수 있고 같은 뉴스가 반복해서 들어오는 문제도 줄일 수 있습니다.

예를 들어 매일 아침 한 번 뉴스를 받아본 뒤 정보량이 부족하다고 느껴지면 실행 횟수를 늘리는 방식이 좋습니다.

실제 사용하면서 자신에게 필요한 빈도를 찾는 것이 중요합니다.

여러 검색 키워드는 나중에 추가한다

하나의 검색어가 정상적으로 작동하면 여러 개의 키워드를 사용할 수 있습니다.

예를 들어 다음과 같이 구성할 수 있습니다.

ChatGPT

AI 자동화

생성형 AI

로컬 AI

프로그램이 각 검색어를 차례로 검색하고 결과를 하나로 정리하도록 만들 수 있습니다.

하지만 처음부터 여러 키워드를 사용하면 검색 결과가 많아지고 같은 뉴스가 중복되는 문제가 발생할 수 있습니다.

그래서 하나의 검색어로 기본 시스템을 완성한 뒤 여러 검색어 기능을 추가하는 것이 좋습니다.

같은 뉴스가 반복되는 문제도 생길 수 있다

시간 기반 트리거를 이용해서 뉴스 검색을 반복하면 이전에 받은 뉴스가 다시 검색될 수 있습니다.

이 문제를 그대로 두면 같은 기사가 계속 텔레그램으로 전달될 수 있습니다.

이를 해결하기 위해서는 이전에 보낸 뉴스 정보를 저장하고 새로운 검색 결과와 비교하는 과정이 필요합니다.

처음에는 이 기능 없이 기본 시스템을 테스트해도 됩니다.

기본 기능이 정상적으로 작동한 뒤 중복 제거 기능을 추가하면 됩니다.

앞으로 이 시리즈에서도 중복 뉴스를 제외하는 방법을 별도로 정리할 예정입니다.

Google Apps Script를 이용한 전체 구조 다시 보기

지금까지 내용을 하나로 연결하면 뉴스 자동수집 시스템의 구조가 더 명확해집니다.

Google Apps Script가 실행됩니다.

설정해둔 뉴스 검색 키워드를 확인합니다.

네이버 뉴스 검색 API에 요청을 보냅니다.

검색 결과를 받아옵니다.

필요한 뉴스 정보만 선택합니다.

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

Bot Token과 Chat ID를 이용해 메시지를 전송합니다.

사용자는 텔레그램에서 뉴스를 확인합니다.

트리거를 추가하면 이 과정이 정해진 시간마다 자동으로 반복됩니다.

Google Apps Script는 이 모든 과정을 연결해서 실행하는 중심 역할을 담당합니다.

뉴스 자동수집 봇은 단계적으로 만드는 것이 중요하다

뉴스 자동수집 시스템은 한 번에 완성하려고 하면 복잡하게 느껴질 수 있습니다.

하지만 기능을 나눠서 보면 어렵지 않습니다.

첫 번째 단계는 텔레그램 봇 생성입니다.

두 번째 단계는 Bot Token과 Chat ID 확인입니다.

세 번째 단계는 뉴스 API 이해와 연결입니다.

네 번째 단계는 Google Apps Script를 이용한 데이터 처리입니다.

다섯 번째 단계는 텔레그램 메시지 전송입니다.

마지막으로 자동 실행과 중복 제거 기능을 추가합니다.

하나씩 정상적으로 작동하는 것을 확인하면서 진행하면 문제가 생겼을 때 수정하기도 쉽습니다.

정리

Google Apps Script는 개인용 뉴스 자동수집 시스템에서 네이버 뉴스 검색 API와 텔레그램 봇을 연결하는 핵심 역할을 합니다.

뉴스 API에 검색 요청을 보내고, 반환된 데이터에서 필요한 내용을 선택하고, 텔레그램용 메시지로 정리해서 전송할 수 있습니다.

또한 시간 기반 트리거를 이용하면 정해진 시간에 이 과정을 자동으로 실행할 수 있습니다.

처음에는 하나의 검색 키워드와 몇 개의 뉴스 결과만 사용해서 직접 실행해보는 것이 좋습니다.

뉴스 검색과 텔레그램 전송이 정상적으로 작동한 뒤 여러 검색어, 중복 제거, 예약 실행 같은 기능을 하나씩 추가하면 됩니다.

이제 뉴스 자동수집 시스템을 실제로 실행할 수 있는 기본 구조까지 준비했습니다.

다음 글에서는 텔레그램 자동화에서 자주 등장하는 Webhook이 무엇인지 알아보고, 뉴스 수집 봇에서 Webhook이 어떤 역할을 하는지 쉽게 정리해보겠습니다.

답글 남기기

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

글쓴이

bluekei9@keinote.com

관련 게시물

“Google Apps Script” 실행 기록을 보고 오류 원인을 처음 찾아봤습니다

안녕하세요 케이입니다. 텔레그램 뉴스봇을 만들다 보면 잘될 때보다 안 될 때가 더 공부가 되는 것 같습니다. 저도 처음에는 오류가 나면 코드 전체를...

모두 읽어보기

Google Apps Script에서 자동으로 실행되는 예약 기능을 처음 써봤습니다

안녕하세요 케이입니다. 앞에서는 제가 자주 확인하는 뉴스 키워드를 텔레그램에 저장하고 /mynews라는 명령어를 입력하면 한꺼번에 뉴스를 받아볼 수 있도록 만들어봤습니다. 여기까지 만들고 나니까...

모두 읽어보기

Google Apps Script로 뉴스 자동수집 봇 만드는 방법

안녕하세요 케이입니다. 지난 글에서는 네이버 뉴스 검색 API와 텔레그램 봇을 어떤 구조로 연결하는지 알아봤습니다. 이번 글에서는 그 중간에서 중요한 역할을 하는 Google...

모두 읽어보기