n8n을 이용하면 여러가지 작업을 플로우로 만들어 자동화할 수 있습니다. 이 포스팅에서는 매일 삼성전자 관련 주요 뉴스를 자동으로 수집하고 요약해 텔레그램으로 전송하는 플로우를 만드는 방법을 알아보았습니다.
오픈소스 워크플로우 자동화 도구인 n8n을 활용하고, 방법을 단계별로 설명합니다. n8n 사용법이 궁금하거나, 자동화 시스템을 통해 중요한 뉴스를 놓치지 않고 싶다면 아래 내용을 확인해보세요.
n8n은 로컬 컴퓨터에 설치 가능한 강력한 워크플로우 자동화 플랫폼입니다. 설치 방법은 이전에 다루었으니, 관련 포스팅을 참고하세요.
위 작업을 하려면, 아래 4가지 기능이 필요합니다.
그럼, 단계별로 어떻게 만드는지 알아보겠습니다.
n8n 캔버스 화면에서 우측 상단 +버튼을 클릭하면, 추가할 수 있는 작업 요소들이 나옵니다. n8n은 처음에 프로그램을 시작하는 Trigger가 필요한데요.
수작업, 스케쥴, 앱 이벤트, 채팅 메시지, Web요청 등 미리 작업된 다양한 트리거를 이용할 수 있습니다. 여기서는 ‘On a schedule’ 트리거를 이용해, 정해진 시간에 전송될 수 있게 하겠습니다.
스케쥴 트리거를 캔버스에 추가한 후에 더블클릭하면 위와 같은 편집화면이 나옵니다. 여기서 실행 주기, 시간 등을 설정합니다. 저는 매일 오전 6시에 발송하도록 설정했습니다.
뉴스 수집은 네이버 API를 이용했습니다. 네이버 검색 API를 이용하면, 특정 키워드의 뉴스를 수집할 수 있습니다. 노션, 구글 등 많이 사용하는 플랫폼에 대한 API는 쉽게 사용하게 구성된 요소들이 있습니다.
하지만, 네이버 API는 제공되지 않아 ‘HTTP Request’ 요소를 사용해 직접 세부내용을 설정해야 합니다. 이를 통해 네이버 API로 뉴스 조회 요청을 보내고, 뉴스 검색 결과를 받습니다.
네이버 API는 네이버 개발자 센터에서 ‘Producs’ – ‘서비스API’ – ‘검색’으로 가면 상세한 내용을 알 수 있습니다. 검색 API를 신청하고 개발 가이드에 보면, 뉴스 검색을 어떻게 요청하면 되는지 설명돼 있습니다. 이 중에 curl 명령어를 이용한 요청 예시를 복사하고, n8n HTTP Request 노드의 ‘Import cURL’ 버튼을 클릭해 붙여넣으면 위와 같이 자동으로 입력됩니다.
HTTP Request 노드 해더 부분에는 자신의 X-Naver-Client-Id, X-Naver-Client-Secret를 입력해야 합니다. API 신청 내역에서 위 정보를 확인할 수 있습니다.
검색 키워드는 ‘삼성전자’로 설정하고, 필요한 경우 추가 필터링을 위한 키워드를 함께 사용할 수 있습니다.
n8n은 오라마를 포함해서 다양한 AI도구를 쉽게 사용하는 기능을 제공합니다. 여기서는 ChatGPT API를 이용해서 뉴스 검색 결과를 요약합니다. n8n의 OpenAI 노드를 사용하면 손쉽게 ChatGPT API 연동이 가능합니다.
Credential 부분에서 ‘Create New Credential’을 선택해 새로운 자격증명을 만듭니다. OpenAI API키를 발급받고, 이를 입력하면 챗GPT API를 이용할 준비가 됩니다.
요약 프롬프트는 아래와 같이 입력했습니다.
Please summarize below new in korean {{ $json.items.toJsonString() }}
위에서 $json.items.toJsonString()은 앞에서 수집한 뉴스 검색 결과를 넣는 부분입니다. 뉴스 결과는 JSON 타입의 구조화된 데이터로 받습니다. 위 내용은 json에서 items에 해당하는 값을 가져와 텍스트로 제공하라는 내용입니다. n8n을 사용하면 자동완성과 미리 보기 기능을 제공합니다. 그래서 어렵지 않게 위와 같이 사용할 수 있습니다.
또는 ‘Conver to File’ 등의 노드에서 자바스크립트를 이용해서 뉴스를 파싱하는 기능을 기본으로 제공합니다. 어렵지는 않지만 자바스크립트를 알면 도움이 됩니다. 또는 자바스크립트나 파이썬 코드를 직접 입력하는 방법도 있습니다. 해당 언어를 잘 안다면, 이 방법을 이용해도 좋겠습니다. 파싱 코드는 챗GPT 도움을 받으면 쉽습니다.
텔레그램으로 메세지를 전송하려면 Telegram 노드를 이용합니다. 여기에 값을 채우면, 텔레그램 API를 이용해서 메세지를 전송할 수 있습니다.
메시지를 보내려면, Credential, Chat ID, Text가 필요합니다. Text부분은 {{ $json.message.content }}라고 입력하면 됩니다.
텔레그램 API를 사용하기 위해서는, BotFather를 통해 새로운 봇을 만들고 API 토큰을 발급 받아야 합니다. 메시지 포맷은 마크다운을 지원하므로 뉴스 제목은 굵은 글씨로, 요약문은 일반 텍스트로, 그리고 원문 링크를 포함하여 가독성 있게 구성할 수 있습니다. 여기서는 그냥 텍스트로 제공했습니다.
완료하면 캔버스 창 하단에 있는 ‘Test workflow’를 클릭해 실험해 볼 수 있습니다. 아래와 같이 뉴스를 요약해서 텔레그램으로 잘 전달합니다.
n8n 워크플로우는 파일로 다운로드 받을 수 있습니다. 워크플로우를 다운로드 하더라도, 계정과 관련된 Credential은 공유되지 않습니다. 그래서 아래 워크플로우 파일을 다운로드하고, Credential에 대한 부분과 네이버 API키에 대한 부분문 채우면 사용이 가능합니다.
삼성전자 뉴스 요약 봇은 정보 수집과 모니터링 업무를 획기적으로 개선할 수 있는 도구입니다. n8n을 활용하면 쉽게 만들고, 내 입맛에 맞게 수정할 수 있습니다.
필요에 따라 다른 기업이나 키워드로 확장하고, 추가 기능을 덧붙여 더욱 강력한 정보 수집 도구로 발전시킬 수 있습니다. 이를 통해 뉴스 모니터링에 많은 시간을 투자하는 대신, 의사결정과 분석에 더 집중할 수 있어 업무 효율성이 크게 향상될 것입니다.
Recommended Posts
송대관 가끔은 예상치 못한 이별이 우리 가슴을 더 아프게 합니다. 국민가수 송대관의 갑작스러운 별세 소식은…
윈도우 pyenv 파이썬 버전 관리 파이썬을 쓰다 보면, 다양한 프로젝트에서 여러가지 버전을 사용해야 하는 일이…
파이썬 전역변수 global 파이썬에서 전역변수(global variable)는 프로그램 전체에서 접근 가능한 변수입니다. 전역변수 과다 사용은 프로그램…
제미나이 LLM 기술이 날로 발달하며, 가격도 시간이 흐를수록 저렴해지고 있습니다. DeepSeek는 오픈소스로 PC에 다운로드해 무료로…
파이썬 교육 "파이썬 배우고 싶은데 너무 어려워서 엄두가 안 나요..." 🤔 "코딩 강의는 많은데, 다…
파이썬 실행파일 만들기 파이썬은 뛰어난 가독성과 유연성 덕분에 많은 개발자들이 선호하는 프로그래밍 언어입니다. 종종 배포를…