Files
ad-hoc/n8n/n8n을 활용한 뉴스 기사 수집 Sample.json

5 lines
28 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"title": "n8n을 활용한 뉴스 기사 수집 Sample",
"content": "n8n\nn8n을 활용한 뉴스 기사 수집 Sample\n개요\n- 키워드를 입력하면 인터넷에서 키워드 연관 기사를 수집·분석하여 인사이트 정보를 정리\n(키워드 입력 → 네이버 키워드 검색 및 본문 정리 → AI 인사이트 생성)\n- 결과물 : 네이버 뉴스 기사 수집 내용(naver api 시트), 기사 분석 내용(sheet 2)\n세부 파이프라인\n구분 노드명 수행 내용 비고\n웹 브라우저 상태에서 입력 가능한 폼.\nStep 1. 키워드 입력\n키워드와 수집 기간을 입력하도록 페이지 구성. 참고 1\n키워드 입력 (Trigger)\n(키워드와 기간으로 뉴스 수집)\nNaver API로 제공된 기사 중, 입력한 키워드와 기간 내의\n기사 수집 참고 2\n기사를 수집 (※ 샘플로 12개만을 수집함)\n수집된 기사 정보를 처리할 수 있도록 분리\n수집 정보 정리 참고 3\n(수집된 12개 기사 묶음을 1개씩 처리하도록 분리)\nStep 2.\n검색 내용 각 기사별 링크로 접속하여 본문을 수집\n기사 본문 수집 참고 4\n수집&정리 (본문 수집을 위하여 Jina AI 활용)\n본문 정리 본문 중 광고, 메뉴, 댓글 등 불필요한 내용 제거 참고 5\n구글 시트에 수집된 기사의 내용을 한줄씩 정리\n기사 저장하기 참고 6\n(번호, 제목, 발행일, url, 요약, 본문 전체를 저장)\n(AI 분석을 위한)\n12개의 본문을 AI가 분석할 수 있도록 하나로 묶음 참고 7\n전처리\n(AI) 본문 분석 Gemini AI가 본문 내용 중 핵심 인사이트 3가지를 정리 참고 8\nStep 3.\nAI 인사이트 생성 AI가 응답한 결과를 구글 시트에 정리하기 위하여 정리\n인사이트 정리 참고 9\n(번호, 인사이트 제목, 내용, 관련 링크)\n저장하기 인사이트 3개를 구글시트 Sheet 2번에 저장 참고 10\n※ (사전) 구글 계정 연결 필요 (참고 6-1)\n기사 수집 대상 및 방법의 보완\n향후 계획 ⇨ 현재 naver api만으로 기사 수집\n⇨ 현재 jina ai를 활용하여 본문 수집(20건 제한)\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 1 -\n\n[참고 1] Step 1. 키워드 입력\n사용자에게 키워드를 받기 위한 화면을 시작점으로 설정.\n사용자가 컴퓨터에 ‘무엇을 조사해줘’라고 키워드를 입력하는 단계로, 사용자가 키워드와 기간을 입\n력하여야만 프로세스가 시작되도록 설정.\n- 세부 단계\n1) “Add first Step...”의 +버튼 클릭하여, (우측) On form submission 클릭\n* 참고 : Trigger manually(내가 버튼 클릭 시), On a schedule(정해진 시간), On webhook call(외부 신호 받을 때), On\nform submission(폼 제출 시), On app event(앱에서 event가 일어날 때), On chat message(채팅 메시지 받을 때)\n2) Parameters에서 수취한 웹 페이지를 구성\n- 페이지 설명\n(1) Authenitication : 폼에 접근 시 로그인 등 인증이 필요한지에 대한 것\n· None : 인증 없이 누구나 링크만 있으면 접근 가능\n(2) From Title : 웹 폼 화면 최상단에 표시되는 제목\n· 뉴스 수집 키워드 입력\n(3) From Description : 폼 제목 아래 표시되는 안내 설명\n· 수집할 키워드와 기간을 입력하세요.\n- 키워드 입력(Form Elements) (*) Add attibutes를 통해 추가\n(1) Label : 폼 화면에 표시되는 항목의 이름\n· 키워드 : 사용자에게 받을 키워드\n(2) Element Type : 항목 입력 방식 (drop down, 텍스트 입력 등)\n· Text input : 입력 방식의 형태\n(2-1) Field Option : (drop down 선택 시,) 각각의 옵션 (선택1, 선택2 등)\n3) Execute step 클릭하여 Output 확인 (예시)\n\"키워드\": \"한맥기술\",\n\"수집 기간\": \"당일\",\n\"submittedAt\": \"2026-02-23T10:06:48.754+09:00\",\n\"formMode\": \"test\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 2 -\n\n[참고 2] Step 2. 검색 내용 수집&정리 기사 수집\nNaver에서 제공하는 기사 중(Naver API) 사용자가 입력한 키워드를 기준으로 기사를 수집함.\n* Naver API : 네이버가 외부 개발자에게 제공하는 검색 기능. 키워드를 입력하면 네이버에서 해당 키워드와 관련된 검색 결과를\n자동으로 돌려줌. 사람이 직접 네이버에서 검색하는 것과 동일한 결과를 프로그램이 자동으로 받아올 수 있게 해주는 서비스.\n- 세부 단계\n1) “HTTP Request” 노드 추가\n* HTTP Request : 외부 인터넷 서비스에 데이터를 요청하고 결과를 받아오는 노드. 웹 브라우저가 특정 주소로 접속해서\n정보를 가져오는 것과 동일한 동작.→ 이번에는 네이버 검색 서비스(Naver API)에 접속하여 검색 결과를 가져옴\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Method : 네이버에 어떤 방식으로 요청을 보낼지 설정\n· Get : 데이터를 읽어서 가져오라는 방식\n(2) URL : 요청 보낼 네이버 서버 주소 (API 주소)\n· https://openapi.naver.com/v1/search/news.json\n(3) Authentication : 인증 방식\n· None\n- 검색 조건 설정 : “Send Query Parameters”를 On으로 체크\n(1) Specify Query Parameters : 검색 조건을 어떤 방식으로 입력할지 선택\n· Using Fields Below (아래의 사항을 중심으로 하나씩 입력)\n(2) Query Parameters : 검색을 Name(항목)과 Value(값)로 입력\n· Name / Value\n① query / (좌측의 “키워드”를 드레그&드랍) : 네이버에 검색할 키워드\n② display / 12 : 가져올 검색 결과 수 (최대 100개까지 가능)\n③ sort / date : 결과 정렬 방식 (날짜 최신순)\n- 네이버 API를 쓰기위한 사용자 정보 입력 : “Send Headers”를 On으로 체크\n(1) Specify Headers : 인증 정보 입력 방식\n· Using Fields Below (아래의 사항을 중심으로 하나씩 입력)\n(2) Headers : 실제 인증 정보를 Name(항목)과 Value(값)로 입력\n· Name / Value\n① X-naver-client-id : 회원 아이디\n② X-naver-client-secret : 회원 비밀번호\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 3 -\n\n3) Execute step 클릭하여 Output 확인 (예시)\n\"lastBuildDate\": \"Mon, 23 Feb 2026 10:32:35 +0900\",\n\"total\": 3265,\n\"start\": 1,\n\"display\": 12,\n\"items\": [\n{\n\"title\": \"2월 3주 엔지니어링 주간 입낙찰 동향\",\n\"originallink\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"link\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"description\": \"이산&b&기술&/b&단 금액 : 22억984만원 사업명 : 함양군 노후상수관망 정비사업 기본 및 실시설계 발주\n처... 삼안, &b&한맥&/b& 금액 : 29억1,115만원 사업명 : 노성·상월면 일원 하수관로 정비사업 기본 및 실시설계 발주처... \",\n\"pubDate\": \"Thu, 19 Feb 2026 10:20:00 +0900\"\n},\n※ 기사 수집 방법 : RSS, Perplexity, (코드 활용)매체별 크롤링 등은 샘플로 정리\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 4 -\n\n[참고 3] Step 2. 검색 내용 수집&정리 수집 정보 정리\n수집된 기사는 하나의 묶음으로 묶여있기 때문에 데이터를 하나씩 분리하여 다음 단계로 넘기기 위\n한 전처리 단계\n- 세부 단계\n1) “Split out” 노드 추가\n* Split out : 한 묶음으로 묶여있는 데이터를 하나씩 분리하는 노드.→ 네이버 API가 돌려준 12개 기사 묶음을 1개씩 떼어\n내어 다음 단계로 하나씩 넘겨줌\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Fields to split out : 묶음 데이터 중 어떤 항목을 분리할지 지정\n· Items : 네이버 API 결과에서 기사 목록이 담긴 항목\n(2) Include : 분리된 데이터 외에 다른 정보도 함께 넘길지 설정\n· No other fields : 기사 내용만 남기고 나머지 정보는 제외\n3) Execute step 클릭하여 Output 확인 (예시)\n\"lastBuildDate\": \"Mon, 23 Feb 2026 10:32:35 +0900\",\n\"total\": 3265,\n\"start\": 1,\n\"display\": 12,\n\"items\": [\n{\n\"title\": \"2월 3주 엔지니어링 주간 입낙찰 동향\",\n\"originallink\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"link\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"description\": \"이산&b&기술&/b&단 금액 : 22억984만원 사업명 : 함양군 노후상수관망 정비사업 기본 및 실시설계 발주\n처... 삼안, &b&한맥&/b& 금액 : 29억1,115만원 사업명 : 노성·상월면 일원 하수관로 정비사업 기본 및 실시설계 발주처... \",\n\"pubDate\": \"Thu, 19 Feb 2026 10:20:00 +0900\"\n},\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 5 -\n\n[참고 4] Step 2. 검색 내용 수집&정리 기사 본문 수집\n네이버 API에서 본문을 제공하지 않기에 수집한 링크로 직접 접속하여 본문을 전체 읽어오는 단계.\n(대부분의 언론사가의 포맷 상이, 외부 접근을 막고 있어 Jina AI를 활용하여 본문을 수집.)\n* Jina AI : 특정 웹페이지 주소(URL)를 전달하면 해당 페이지의 본문을 읽어서 텍스트로 변환해 주는 서비스. 구독이 필요\n한 언론사 사이트도 본문을 읽어올 수 있음. (무료 계정 기준 시간당 20건 제한)\n- 세부 단계\n1) “HTTP Request” 노드 추가\n* HTTP Request : 외부 인터넷 서비스에 데이터를 요청하고 결과를 받아오는 노드. 웹 브라우저가 특정 주소로 접속해서\n정보를 가져오는 것과 동일한 동작.→ 이번에는 지나 AI서비스에 기사 링크를 전달하여 본문 전체를 가져오고자 함\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Method : Jina AI 서비스에 전달하는 방식\n· Get : 데이터를 읽어서 가져오라는 방식\n(2) URL : 요청 보낼 주소 (Jina 링크 뒤에 각각의 링크 추가)\n· https://r.jina.ai/{{ $json.link }}\n(3) Authentication : 인증 방식\n· None\n- Jina AI API를 쓰기 위한 사용자 정보 입력 : “Send Headers”를 On으로 체크\n(1) Specify Headers : 인증 정보 입력 방식\n· Using Fields Below (아래의 사항을 중심으로 하나씩 입력)\n(2) Headers : 실제 인증 정보를 Name(항목)과 Value(값)로 입력\n· Name / Value\n① Authorization / Bearer jina_a72bde1404d14c2a94fd0c8b357cf795yFATC69lNjusqnhy5ymUhnqjBMNh\n* Jina AI에서 제공하는 API 키 등록(20건까지 무료)\n3) Execute step 클릭하여 Output 확인 (예시)\n\"data\": \"Title: 2월 3주 엔지니어링 주간 입낙찰 동향\\n\\nURL Source: http://www.engdaily.com/news/articleView.html?idxno=21743\\n\\nPublished Time:\n2026-02-19T10:18:38+09:00\\n\\nMarkdown Content:\\n2월 3주 엔지니어링 주간 입낙찰 동향 엔지니어링데일리\\n===============\\n\\n×\\n*\n[전체기사](http://www.engdaily.com/news/articleList.html?view_type=sm)\\n*\n[뉴스](http://www.engdaily.com/news/articleList.html?sc_section_code=S1N1&view_type=sm)\\n *\n[전체](http://www.engdaily.com/news/articleList.html?sc_section_code=S1N1&view_type=sm)\\n *\n[정책](http://www.engdaily.com/news/articleList.html?sc_sub_section_code=S2N1&view_type=sm)\\n *\n[업계](http://www.engdaily.com/news/articleList.html?sc_sub_section_code=S2N2&view_type=sm)\\n * [\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 6 -\n\n[참고 5] Step 2. 검색 내용 수집&정리 기사 본문 정리\nJina AI를 통해 수집된 본문에서 필요한 정보만을 추출하는 단계\n* Jina AI가 가져온 원본에는 기사 본문 외에 광고, 메뉴, 댓글, 이미지 설명 등 불필요한 내용이 섞여 있어 이를 자동으로 걸러\n내는 처리가 필요함.\n- 세부 단계\n1) “Code” 노드 추가\n* Code : AI를 활용하여 코드를 작성, 데이터를 원하는 형태로 가공하는 노드.→ 이번에는 Jina AI가 가져온 원본 텍스트에\n서 순수 기사 본문만 추출하고, 앞 단계(Split Out)의 제목·발행일·링크 정보와 합치는 용도로 사용.\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Mode : 코드를 어떠한 방식으로 실행할지에 대한 설정\n· Run once for each item : 12개 기사 1개씩 반복 처리\n(2) Language : 코드를 어떤 프로그래밍 언어로 작성할지 선택\n· Javascript\n(3) 코드 입력\n· (claude에 해당 사항에서 본문 추출을 위한 코드 정리 요청)\n[입력 프롬프트]\n* (참고 5. 결과물 중 샘플 3개 입력 후)\n수집한 기사 본문에서 광고·메뉴·링크·이미지 등 불필요한 내용을 제거하고, 순수한 본문 내용만 추출하고자 해.본문 구조를 파\n악하여 n8n Code 노드용 JavaScript 코드로 정리해줘.최종 출력 항목은 제목, 발행일, url, 주요내용, 본문전체이고,앞 단계 노\n드명은 '수집 정보 정리'야.\n[클로드 코드]\n원본 전체를 Raw 저장 → 마크다운 콘텐츠 추출(제목, url 메타정보 삭제) → 50자 미만 줄 제거,\n헤더목차,강조, 링크, 이미지 등 제거 → 본문 정리 → 수집정보 정리(참고4)와 본문을 하나로 정리\n3) Execute step 클릭하여 Output 확인 (예시)\n\"title\": \"2월 3주 엔지니어링 주간 입낙찰 동향\",\n\"발행일\": \"Thu, 19 Feb 2026 10:20:00 +0900\",\n\"url\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"주요내용\": \"이산&b&기술&/b&단 금액 : 22억984만원 사업명 : 함양군 노후상수관망 정비사업 기본 및 실시설계 발주처...\n삼안, &b&한맥&/b& 금액 : 29억1,115만원 사업명 : 노성·상월면 일원 하수관로 정비사업 기본 및 실시설계 발주처... \",\n\"본문전체\": \"(엔지니어링데일리) 정원기 기자 = 19일 엔지니어링업계에 따르면 2월 3주 엔지니어링 입낙찰 동향은 다음과\n같다. 사업명 : 2026년도 호남고속선 오송~익산간 외 2개소 궤도 정밀진단 및 성능평가 엔지니어링 사업명 : 용산국제업무지\n구 동서방향연결도로 외 3개소 재해영향성검토 및 (소규모)재해영향평가 사업명 : 산양,사창 노후하수관로 정비 및 하리1 배\n수분구 중점관리지역 도시침수 대응사업 통합건설사업관리\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 7 -\n\n[참고 6] Step 2. 검색 내용 수집&정리 기사 저장하기\n참고 5에서 정리된 기사 정보(제목, 발행일, url, 주요내용, 본문전체)를 구글 스프레드시트 시트1에\n한 줄씩 저장하는 단계.\n* 사전 구글 계정의 연결 필요(참고 6-1)\n- 세부 단계\n1) “Google sheets_append row in sheet” 노드 추가\n* Google sheets : 구글 스프레드시트에 데이터를 읽거나 쓰는 노드\n* append row in sheet : 정리된 기사 정보를 지정한 시트에 한 줄씩 추가\n2) Parameters에서 요청 내용 정리\n- 기본 설정 (사전 구글 계정 연동 필요(참고 6-1))\n(1) Credential to connet with : 연결할 구글 계정 선택\n· Google sheets account\n(2) Resource : 구글 서비스 중 선택할 소스\n· sheet within document\n(3) Operation : 작업 선택\n· Append Row : 시트 마지막 행에 새줄 추가\n(4) Document : 저장할 구글 스프레드시트파일\n· sample\n(5) sheet : 저장할 시트 선택\n· 시트 1\n- 구글 시트에 입력 방식 선택 : Mapping column mode\nMap Each Column Manually : 항목을 하나씩 직접 지정하여 저장\n* 구글시트에 있는 head가 자동으로 Value to send 항목으로 정리. 좌측 input을 매칭\n3) Execute step 클릭하여 Output 확인 (예시)\n\"title\": \"2월 3주 엔지니어링 주간 입낙찰 동향\",\n\"url\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"주요내용\": \"이산&b&기술&/b&단 금액 : 22억984만원 사업명 : 함양군 노후상수관망 정비사업 기본 및 실시설계 발주처...\n삼안, &b&한맥&/b& 금액 : 29억1,115만원 사업명 : 노성·상월면 일원 하수관로 정비사업 기본 및 실시설계 발주처... \",\n\"발행일\": \"Thu, 19 Feb 2026 10:20:00 +0900\",\n“구분” : 1,\n\"본문전체\": \"(엔지니어링데일리) 정원기 기자 = 19일 엔지니어링업계에 따르면 2월 3주 엔지니어링 입낙찰 동향은 다음과\n같다. 사업명 : 2026년도 호남고속선 오송~익산간 외 2개소 궤도 정밀진단 및 성능평가 엔지니어링 사업명 : 용산국제업무지\n구 동서방향연결도로 외 3개소 재해영향성검토 및 (소규모)재해영향평가 사업명 : 산양,사창 노후하수관로 정비 및 하리1 배\n수분구 중점관리지역 도시침수 대응사업 통합건설사업관리\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 8 -\n\n[참고 6-1] Step 2. 검색 내용 수집&정리 기사 저장하기 (구글 계정 연결하기)\nCredential to connect with\n* “+ create new credential” 클릭 → Client ID, client Secret 입력\n1) console.cloud.google.com 접속\n(1) 프로젝트 생성 : 프로젝트 선택 → 새프로젝트 → 프로젝트 이름 입력 후 만들기\n(2) API 활성화 :\n① 구글 시트\n(좌측) API 및 서비스 → 라이브러리 → (검색창에) google sheets api → “사용” 클릭\n② 구글 드라이브\n(좌측) API 및 서비스 → 라이브러리 → (검색창에) google drive api → “사용” 클릭\n(3) OAuth 2.0 클라이언트 ID 생성\n① (좌측) 사용자 인증정보 → (상단) + 사용자 인증 정보 만들기 → OAuth 클라이언트 ID\n→ 동의 화면 구성 → 시작하기\n② 입력\n- 앱이름 : n8n / 사용자 지원 이메일 : 입력\n- 대상 : 외부\n- 이메일 및 완료\n③ OAuth 클라이언트 만들기\n- 애플리케이션 유형 : 웹 애플리케이션\n- 이름 : n8n\n- 승인된 리디렉션 URI : http://localhost:5678/rest/oauth2-credential/callback\n(4) 사용자 등록\n(좌측) API 및 서비스 → OAuth 동의 → 대상 → 테스트사용자 +Add users → (이메일 입력\n후) 저장\n2) 아이디 비번 입력\n- Client ID / Client Sectret 입력 & save 버튼 클릭\n- Sign in with google 클릭 후 로그인 허용\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 9 -\n\n[참고 7] Step 3. AI 인사이트 생성 - 전처리\n참고 6에서 저장된 12개 기사의 본문을 AI가 한 번에 분석할 수 있도록 하나로 합치는 단계.\n* 12개를 각각 AI에 보내면 API 호출이 12번 발생하여 비용과 시간이 늘어남. 하나로 합쳐서 1번만 호출하도록 전처리.\n- 세부 단계\n1) “Aggregate” 노드 추가\n* Aggregate : 여러 개로 나뉜 데이터를 하나로 합치는 노드.→ 이번에는 12개 기사의 본문전체 항목을 하나의 묶음으로 합\n쳐서 Gemini AI로 전달하는 용도로 사용.\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Aggregate : 어떠한 방식으로 합칠지 선택\n· All Item Data (Into a Single List) : 모든 항목을 하나의 리스트로 합침\n(2) Put Output in Field : 합쳐진 결과를 어떤 이름으로 저장할지 설정\n· data\n(3) Include : 합칠 때 어떤 항목을 포함할지 설정\n· Selected Fields : 지정한 항목만 포함\n· Field Name : 본문전체\n3) Execute step 클릭하여 Output 확인 (예시) - 12개 기사가 하나로 합쳐져서 출력\n\"title\": \"2월 3주 엔지니어링 주간 입낙찰 동향\",\n\"url\": \"http://www.engdaily.com/news/articleView.html?idxno=21743\",\n\"주요내용\": \"이산&b&기술&/b&단 금액 : 22억984만원 사업명 : 함양군 노후상수관망 정비사업 기본 및 실시설계 발주처...\n삼안, &b&한맥&/b& 금액 : 29억1,115만원 사업명 : 노성·상월면 일원 하수관로 정비사업 기본 및 실시설계 발주처... \",\n\"발행일\": \"Thu, 19 Feb 2026 10:20:00 +0900\",\n“구분” : 1,\n\"본문전체\": \"(엔지니어링데일리) 정원기 기자 = 19일 엔지니어링업계에 따르면 2월 3주 엔지니어링 입낙찰 동향은 다음과\n같다. 사업명 : 2026년도 호남고속선 오송~익산간 외 2개소 궤도 정밀진단 및 성능평가 엔지니어링 사업명 : 용산국제업무지\n구 동서방향연결도로 외 3개소 재해영향성검토 및 (소규모)재해영향평가 사업명 : 산양,사창 노후하수관로 정비 및 하리1 배\n수분구 중점관리지역 도시침수 대응사업 통합건설사업관리\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 10 -\n\n[참고 8] Step 3. AI 인사이트 생성 본문 분석\n참고 7 결과물(하나로 합쳐진 12개 기사 본문)을 Gemini AI에게 전달하여 인사이트 3가지를 추출\n* 사전 Gemini API 키 발급 필요\n- 세부 단계\n1) “Google Gemini” 노드 추가\n- Text action Message a model 선택\n* Text action message a model : 텍스트를 Gemini AI에게 전달하고 분석 결과를 받아오는 기능\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Credential to connect with : Gemini API 키 입력\n(2) Resource : input 데이터 형식\n· Text\n(3) Operation ; resource를 통하여 어떠한 작업을 하는지 확인\n· Message a model : AI에게 메시지를 보내도 답변 수취\n(4) Model : Gemini AI 모델 선택\n(5) Messages : 프롬프트 입력\n· Prompt : 내가 AI에게 입력\n아래는 '{{ $('키워드 입력(Trigger)').first().json['키워드'] }}' 키워드 관련 뉴스 본문들입니다.\n{{ $json.data.map(item => item['본문 전체']).join('\\n\\n') }}\n위 내용을 바탕으로 주요 인사이트 3개를 아래 JSON 형식으로만 답해줘. 다른 말은 하지 마:\n[ {\"제목\": \"인사이트 제목\", \"내용\": \"상세 내용\", \"링크\": \"관련 기사 URL\"},\n{\"제목\": \"인사이트 제목\", \"내용\": \"상세 내용\", \"링크\": \"관련 기사 URL\"},\n{\"제목\": \"인사이트 제목\", \"내용\": \"상세 내용\", \"링크\": \"관련 기사 URL\"}\n]\n· Model : AI가 이전에 한 말을 다시 넣어서 실행\n3) Execute step 클릭하여 Output 확인 (예시) - 12개 기사가 하나로 합쳐져서 출력\n\"text\": \"```json\\n[\\n {\\n \\\"제목\\\": \\\"한맥기술, 건설 특화 2D·3D 통합 설계 솔루션 'EG-BIM' 상용화 테스트 참여\\\",\\n \\\"내\n용\\\": \\\"㈜한맥기술은 바론컨설턴트가 자체 개발한 2D 설계와 3D 뷰어 기능을 통합한 건설특화 CAD 솔루션 'EG-BIM(이지\n빔)'의 상용화 테스트에 참여하여 실무 안정성을 검증받았다.\\\",\\n \\\"링크\\\":\n\\\"https://www.dnews.co.kr/uhtml/view.jsp?idxno=202601200915035880355#\\\"\\n },\\n {\\n \\\"제목\\\": \\\"박다정 한맥 대표, '미\n래를 이끌어갈 여성지도자상' 농업 부문 수상\\\",\\n \\\"내용\\\": \\\"강원도 평창에서 약용 작물(천궁·당귀)을 재배하는 박다정 한맥\n대표가 청년 여성 농업인 육성과 농업 발전에 기여한 공로를 인정받아 여성신문의 '미래를 이끌어갈 여성지도자상'을 수상했\n다. 그녀는 귀농 후 데이터화된 농사 노하우와 드론 방제사 자격증 취득 등 신기술을 접목하며 농업 혁신을 이끌고 있다.\\\",\\n\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 11 -\n\n[참고 9] Step 3. AI 인사이트 생성 인사이트 정리\n참고 8에서 Gemini AI가 돌려준 결과를 구글 시트에 저장할 수 있는 형태로 가공하는 단계\n.※ Gemini AI 응답은 JSON 형식으로 오기 때문에 이를 번호/제목/내용/링크 항목으로 분리해야 함.\n- 세부 단계\n1) “Code” 노드 추가\n* Code : AI를 활용하여 코드를 작성, 데이터를 원하는 형태로 가공하는 노드.→ 이번에는 Gemini AI가 JSON 형식으로 돌\n려준 인사이트 3개를 번호/제목/내용/링크로 각각 분리하여 구글 시트에 저장할 수 있는 형태로 정리.\n2) Parameters에서 요청 내용 정리\n- 기본 설정\n(1) Mode : 코드를 어떠한 방식으로 실행할지에 대한 설정\n· Run once for all item : 1개 결과물을 정리\n(2) Language : 코드를 어떤 프로그래밍 언어로 작성할지 선택\n· Javascript\n(3) 코드 입력\n· (claude에 해당 사항에서 본문 추출을 위한 코드 정리 요청)\n[입력 프롬프트]\n* (참고 8. Gemini 결과물 입력 후)\n위는 Gemini AI가 돌려준 인사이트 결과입니다. JSON을 파싱하여 인사이트 3개를 각각 번호(#), 인사이트 제목, 관련 내용, 관\n련 링크 항목으로 분리하는 n8n Code 노드용 JavaScript 코드를 작성해줘.\n[클로드 코드]\nGemini 응답 텍스트 수신 → JSON 파싱 → 인사이트 3개를 각각 분리 → 번호/제목/내용/링크\n4개 항목으로 정리하여 다음 단계로 전달\n3) Execute step 클릭하여 Output 확인 (예시)\n\"#\": 1,\n\"인사이트\": \"한맥기술, 건설 특화 2D·3D 통합 설계 솔루션 'EG-BIM' 상용화 테스트 참여\",\n\"관련 내용\": \"㈜한맥기술은 바론컨설턴트가 자체 개발한 2D 설계와 3D 뷰어 기능을 통합한 건설특화 CAD 솔루션 'EG-BIM(이\n지빔)'의 상용화 테스트에 참여하여 실무 안정성을 검증받았다.\",\n\"관련 링크\": \"https://www.dnews.co.kr/uhtml/view.jsp?idxno=202601200915035880355#\"\n\"#\": 2,\n\"인사이트\": \"박다정 한맥 대표, '미래를 이끌어갈 여성지도자상' 농업 부문 수상\",\n\"관련 내용\": \"강원도 평창에서 약용 작물(천궁·당귀)을 재배하는 박다정 한맥 대표가 청년 여성 농업인 육성과 농업 발전에 기여\n한 공로를 인정받아 여성신문의 '미래를 이끌어갈 여성지도자상'을 수상했다. 그녀는 귀농 후 데이터화된 농사 노하우와 드론\n방제사 자격증 취득 등 신기술을 접목하며 농업 혁신을 이끌고 있다.\",\n\"관련 링크\": \"https://n.news.naver.com/mnews/article/310/0000133113?sid=102#\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 12 -\n\n[참고 10] Step 3. AI 인사이트 생성 저장하기\n참고 9에서 정리된 인사이트 3개를 구글 스프레드시트 Sheet2에 한 줄씩 저장하는 단계\n- 세부 단계\n1) “Google sheets_append row in sheet” 노드 추가\n* Google sheets : 구글 스프레드시트에 데이터를 읽거나 쓰는 노드\n* append row in sheet : 정리된 기사 정보를 지정한 시트에 한 줄씩 추가\n2) Parameters에서 요청 내용 정리\n- 기본 설정 (사전 구글 계정 연동 필요(참고 6-1))\n(1) Credential to connet with : 연결할 구글 계정 선택\n· Google sheets account\n(2) Resource : 구글 서비스 중 선택할 소스\n· sheet within document\n(3) Operation : 작업 선택\n· Append Row : 시트 마지막 행에 새줄 추가\n(4) Document : 저장할 구글 스프레드시트파일\n· sample\n(5) sheet : 저장할 시트 선택\n· 시트 2\n- 구글 시트에 입력 방식 선택 : Mapping column mode\nMap Each Column Manually : 항목을 하나씩 직접 지정하여 저장\n* 구글시트에 있는 head가 자동으로 Value to send 항목으로 정리. 좌측 input을 매칭\n3) Execute step 클릭하여 Output 확인 (예시)\n\"인사이트\": \"한맥기술, 건설 특화 2D·3D 통합 설계 솔루션 'EG-BIM' 상용화 테스트 참여\",\n\"관련 내용\": \"㈜한맥기술은 바론컨설턴트가 자체 개발한 2D 설계와 3D 뷰어 기능을 통합한 건설특화 CAD 솔루션\n'EG-BIM(이지빔)'의 상용화 테스트에 참여하여 실무 안정성을 검증받았다.\",\n\"링크\": \"https://www.dnews.co.kr/uhtml/view.jsp?idxno=202601200915035880355#\"\n기술로 사람과 자연이\n함께하는 세상을 만들어 갑니다.\n- 13 -\n\n",
"source_hwp": "D:\\ad-hoc\\n8n\\n8n을 활용한 뉴스 기사 수집 Sample.hwp"
}