8
n8n 한국어amn8n.com

키워드를 사용하여 자동으로 AI 뉴스 필터링하고 Telegram에 전송

고급

이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 27개의 노드를 포함합니다.주로 If, Code, Wait, Telegram, HttpRequest 등의 노드를 사용하며. Gemini AI와 BrowserAct를 사용하여 실시간 뉴스를筛选하고 Telegram 채널로 전송합니다.

사전 요구사항
  • Telegram Bot Token
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Gemini API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "jn6Sgk2HcKiQKW0s",
  "meta": {
    "instanceId": "e2a1d0ec98fd0994972a016020dcf90b56d31fa85f2abd02801701fb8fc45e3d",
    "templateCredsSetupCompleted": true
  },
  "name": "Automate AI News Filtering with Keywords to Telegram",
  "tags": [],
  "nodes": [
    {
      "id": "c6e3a4a0-5ad5-4112-b31f-5fe4778e6166",
      "name": "대기",
      "type": "n8n-nodes-base.wait",
      "position": [
        416,
        64
      ],
      "webhookId": "de7e4b3a-5957-40b9-9312-dcf012ebc6f0",
      "parameters": {
        "unit": "minutes"
      },
      "typeVersion": 1.1
    },
    {
      "id": "18832f60-9fb3-4cec-ba87-781dd68bfcde",
      "name": "대기1",
      "type": "n8n-nodes-base.wait",
      "position": [
        -128,
        64
      ],
      "webhookId": "25fa1ce4-496d-47af-b18e-47b3319236cb",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "fdc9f1cf-45ff-4264-885f-ccf84593244e",
      "name": "구조화 출력 파서",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        928,
        -32
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"Matched_News\": [\n    {\n      \"Headline\": \"<String>\",\n      \"Pic\": \"<String>\",\n      \"Url\": \"<String>\"\n    }\n  ]\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "f5977d48-28d1-4fa5-adcb-d15a1d735a3e",
      "name": "일정 트리거",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -624,
        -192
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7df1a8af-2829-41c8-9b5d-6b295a3be150",
      "name": "메모-소개",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1232,
        -416
      ],
      "parameters": {
        "width": 592,
        "height": 424,
        "content": "## Try It Out!\n### This n8n template automates news content marketing by scraping news and sending relevant articles to Telegram using an AI Agent.\n\n### How it works\n* The workflow is triggered automatically on a schedule.\n* It uses an **HTTP Request** node to start a web scraping task with the **BrowserAct** API to collect the latest news.\n* A series of **If** and **Wait** nodes monitor the scraping job until it's finished.\n* An **AI Agent** node, powered by **Google Gemini**, processes the headlines and filters the news based on a list of keywords you define.\n* A **Code** node then formats the AI's output into a clean format.\n* The final news articles are sent as rich media messages to **Telegram**, including the headline, a picture, and a link.\n\n### Requirements\n* **BrowserAct** API account for web scraping\n* **Gemini** account for the AI Agent\n* **BrowserAct** **“News Content Marketing Automation”** Template\n* **Telegram** credentials for sending messages\n\n### Need Help?\nJoin the **BrowserAct** [Discord](https://discord.com/invite/UpnCKd7GaU) or Visit Our [Blog](https://www.browseract.com/blog)!\n"
      },
      "typeVersion": 1
    },
    {
      "id": "254977ab-b357-46b9-b802-bd467faa3bf1",
      "name": "메모-스크래핑",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        -416
      ],
      "parameters": {
        "color": 5,
        "width": 480,
        "height": 180,
        "content": "## 1. Trigger the News Scraper\n\nThis workflow runs on a set schedule to automatically trigger a web scraping task via the BrowserAct API. This allows you to continuously collect up-to-date news data.\n\n### Don't forget to add your BrowserAct Workflow ID. "
      },
      "typeVersion": 1
    },
    {
      "id": "cea82e48-0885-4791-b9ad-ba376541e4ca",
      "name": "메모-대기",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -416
      ],
      "parameters": {
        "color": 5,
        "width": 496,
        "height": 180,
        "content": "## 2. Wait for Scraping to Finish\n\nThese nodes check the status of the scraping task. The `If` node determines if the task is complete. If it's still running, the `Wait` node pauses the workflow for a set period before retrying to check the status."
      },
      "typeVersion": 1
    },
    {
      "id": "fedbec03-948e-44b5-b39b-919b85ba450b",
      "name": "메모-AI",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        624,
        -416
      ],
      "parameters": {
        "color": 4,
        "width": 496,
        "height": 176,
        "content": "## 3. Use AI to Filter News by Keywords\n\nThis node uses an AI Agent to filter the scraped news articles. It checks each article headline against your specified keywords to find the most relevant content. It's configured with a **Structured Output Parser** to ensure the results are always in the correct format.\n\n### Don't forget to Connect Your Gemini."
      },
      "typeVersion": 1
    },
    {
      "id": "c0ad9350-4281-48f7-adb0-0ae07bf9e733",
      "name": "메모-알림",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        624,
        288
      ],
      "parameters": {
        "color": 3,
        "width": 496,
        "height": 164,
        "content": "## 4. Send News to Telegram\n\nThe scraped data is sometimes hard to read. A **Code** node is used here to transform the AI's output into a more readable format. The **Telegram** node then sends the final, filtered news articles directly to you as a photo message with a caption and link.\n\n### Don't forget to Config your Telegram Api & Telegram Channel ID. "
      },
      "typeVersion": 1
    },
    {
      "id": "321d6bf9-303f-43a2-a559-4c1bbff5e543",
      "name": "메모",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        -224
      ],
      "parameters": {
        "color": 5,
        "width": 480,
        "height": 496,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "85c6eae6-b867-41d0-9028-a5f5664b0956",
      "name": "메모1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        624,
        -224
      ],
      "parameters": {
        "color": 4,
        "width": 496,
        "height": 304,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "bff1aca3-719f-4328-8d4d-2d95583fa413",
      "name": "메모2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        624,
        96
      ],
      "parameters": {
        "color": 3,
        "width": 496,
        "height": 176,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "c27989d0-7f1b-4a42-8dc1-7ac56e6f0fbd",
      "name": "메모3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -224
      ],
      "parameters": {
        "color": 5,
        "width": 496,
        "height": 496,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "416d315c-0554-40ff-a7af-9a4e73f4fd05",
      "name": "메모-사용 방법",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1232,
        16
      ],
      "parameters": {
        "width": 592,
        "height": 168,
        "content": "## How to use\n1- **Create BrowserAct Workflow:** Set up the **News Content Marketing Automation** template in your BrowserAct account.\n2- **Add BrowserAct Token:** Connect your BrowserAct account credentials to the **HTTP Request** inside **Run Node**.\n3- **Update Workflow ID:** Change the `workflow_id` value in the **HTTP Request** inside **Run Node** to match the one from your BrowserAct workflow.\n4- **Connect Gemini:** Add your Google Gemini credentials to the **AI Agent** node.\n5- **Configure Telegram:** Connect your Telegram account and add your Channel ID to the **Send Node** node."
      },
      "typeVersion": 1
    },
    {
      "id": "b51ef89a-024e-4e05-910e-6e6767341f08",
      "name": "워크플로 실행",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -320,
        -192
      ],
      "parameters": {
        "url": "https://api.browseract.com/v2/workflow/run-task",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "workflow_id",
              "value": "52940169781736034"
            }
          ]
        },
        "genericAuthType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "x2SDklVkEIBFM56U",
          "name": "BrowserACtaPi"
        }
      },
      "retryOnFail": true,
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "2a231d11-d5cd-4407-8eed-ae5da29f784f",
      "name": "오류 확인",
      "type": "n8n-nodes-base.if",
      "position": [
        -128,
        -192
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "d48ae258-78a0-4b26-923d-2643b6b774c6",
              "operator": {
                "type": "object",
                "operation": "notExists",
                "singleValue": true
              },
              "leftValue": "={{ $json.error }}",
              "rightValue": ""
            },
            {
              "id": "3967a169-8432-45bd-8f89-08795fd12679",
              "operator": {
                "type": "string",
                "operation": "notEquals"
              },
              "leftValue": "={{ $json.id }}",
              "rightValue": "null"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 2.2
    },
    {
      "id": "5a7f5fa2-c200-4083-b7f5-583fefac52b2",
      "name": "워크플로 데이터 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        160,
        -208
      ],
      "parameters": {
        "url": "https://api.browseract.com/v2/workflow/get-task",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "=task_id",
              "value": "={{ $json.id }}"
            }
          ]
        }
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "x2SDklVkEIBFM56U",
          "name": "BrowserACtaPi"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "73aaf1e5-d195-456b-8f27-421d0341fde2",
      "name": "\"완료\" 상태 확인",
      "type": "n8n-nodes-base.if",
      "position": [
        432,
        -208
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "0347a2a2-eb32-414d-9494-4e648078cf40",
              "operator": {
                "type": "object",
                "operation": "notExists",
                "singleValue": true
              },
              "leftValue": "={{ $json.error }}",
              "rightValue": ""
            },
            {
              "id": "99f31959-6f27-40dd-97c3-6ff611da1e0b",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "finished"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "95c5ddfe-713d-4aa1-8a8e-8ef3bbef9847",
      "name": "키워드 필터링",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        784,
        -224
      ],
      "parameters": {
        "text": "=from input parameters {{ $json.input_parameters }} you can find \"Key_Words\" input parametres are spilted by \";\" and each keyWord Splited by \",\" Extract the Keywords From it\n\ninside the Output -> String {{ $json.output.string }} there is list of maps like thsi sample\n[\n{\n\"Headline\":<String>\n\"Pic\":<String>\n\"Url\":<String>\n}\n]\n\ni want you to check each items Headline and comapre it with teh keywords if it directly contains keywords or were about keywords send it to output in the Json like this \n\n{\n  \"Matched_News\": [\n    {\n      \"Headline\": \"<String>\",\n      \"Pic\": \"<String>\",\n      \"Url\": \"<String>\"\n    }\n  ]\n}",
        "options": {},
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "2bcfb58c-03ce-4b10-bdaa-1b2b349b1e25",
      "name": "Google Gemini",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        784,
        -32
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "G8YK0DTLFGi5n0WD",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "20e496e0-d254-4bbf-b1fb-7a26c629dabf",
      "name": "코드 - 출력 정리",
      "type": "n8n-nodes-base.code",
      "position": [
        688,
        128
      ],
      "parameters": {
        "jsCode": "// Get the original list from the 'Request' key in the incoming data.\nconst originalList = $input.first().json.output.Matched_News;\n\n// Create a new array to store the formatted output.\nconst outputItems = [];\n\n// Loop through each item in the original list.\nfor (const item of originalList) {\n  // For each item, create a new object in the desired format.\n  outputItems.push({\n    json: {\n      \"text\": item\n    }\n  });\n}\n\n// Return the new list of formatted objects.\nreturn outputItems;"
      },
      "typeVersion": 2
    },
    {
      "id": "c6716be1-b60f-45f6-a4ed-0352fe5019a7",
      "name": "뉴스 사진을 Telegram로 전송",
      "type": "n8n-nodes-base.telegram",
      "position": [
        896,
        128
      ],
      "webhookId": "7d044499-2671-4606-bd72-18153c3cc7a0",
      "parameters": {
        "file": "={{ $json.text.Url }}",
        "chatId": "@test",
        "operation": "sendPhoto",
        "additionalFields": {
          "caption": "={{ $json.text.Headline }}\n\n{{ $json.text.Url }}"
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "34LCOs7mfDx5vkSV",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0dbf1ada-3cdb-4167-b024-672bb01f6f39",
      "name": "메모-사용 방법1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1232,
        192
      ],
      "parameters": {
        "width": 592,
        "height": 96,
        "content": "## Need Help ?\n*  [How to Find Your BrowseAct API Key & Workflow ID](https://www.youtube.com/watch?v=pDjoZWEsZlE)\n* [How to Connect n8n to Browseract](https://www.youtube.com/watch?v=RoYMdJaRdcQ)\n* [How to Use & Customize BrowserAct Templates](https://www.youtube.com/watch?v=CPZHFUASncY)"
      },
      "typeVersion": 1
    },
    {
      "id": "409a0100-6535-45e9-8354-b0f148a2acb9",
      "name": "메모4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -240,
        -512
      ],
      "parameters": {
        "color": 5,
        "width": 182,
        "height": 80,
        "content": "## \n# Run Node"
      },
      "typeVersion": 1
    },
    {
      "id": "66583e9c-49db-4498-a42e-c0d5a2d5455b",
      "name": "메모5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        272,
        -512
      ],
      "parameters": {
        "color": 5,
        "width": 182,
        "height": 80,
        "content": "## \n# Get Node"
      },
      "typeVersion": 1
    },
    {
      "id": "1ba5bc7c-7190-44a9-9bb4-92fb0261607e",
      "name": "메모6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        784,
        -512
      ],
      "parameters": {
        "color": 4,
        "width": 262,
        "height": 80,
        "content": "## \n# AI Agent Node"
      },
      "typeVersion": 1
    },
    {
      "id": "33e672c8-e51c-4fc9-bbf6-adec63b3c27d",
      "name": "메모7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        768,
        464
      ],
      "parameters": {
        "color": 3,
        "width": 214,
        "height": 80,
        "content": "## \n# Send Node"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "d1c49fab-6556-4a49-81ba-7171954be2df",
  "connections": {
    "c6e3a4a0-5ad5-4112-b31f-5fe4778e6166": {
      "main": [
        [
          {
            "node": "5a7f5fa2-c200-4083-b7f5-583fefac52b2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "18832f60-9fb3-4cec-ba87-781dd68bfcde": {
      "main": [
        [
          {
            "node": "b51ef89a-024e-4e05-910e-6e6767341f08",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b51ef89a-024e-4e05-910e-6e6767341f08": {
      "main": [
        [
          {
            "node": "2a231d11-d5cd-4407-8eed-ae5da29f784f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2bcfb58c-03ce-4b10-bdaa-1b2b349b1e25": {
      "ai_languageModel": [
        [
          {
            "node": "95c5ddfe-713d-4aa1-8a8e-8ef3bbef9847",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "2a231d11-d5cd-4407-8eed-ae5da29f784f": {
      "main": [
        [
          {
            "node": "5a7f5fa2-c200-4083-b7f5-583fefac52b2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "18832f60-9fb3-4cec-ba87-781dd68bfcde",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f5977d48-28d1-4fa5-adcb-d15a1d735a3e": {
      "main": [
        [
          {
            "node": "b51ef89a-024e-4e05-910e-6e6767341f08",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5a7f5fa2-c200-4083-b7f5-583fefac52b2": {
      "main": [
        [
          {
            "node": "73aaf1e5-d195-456b-8f27-421d0341fde2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "95c5ddfe-713d-4aa1-8a8e-8ef3bbef9847": {
      "main": [
        [
          {
            "node": "20e496e0-d254-4bbf-b1fb-7a26c629dabf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "20e496e0-d254-4bbf-b1fb-7a26c629dabf": {
      "main": [
        [
          {
            "node": "c6716be1-b60f-45f6-a4ed-0352fe5019a7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fdc9f1cf-45ff-4264-885f-ccf84593244e": {
      "ai_outputParser": [
        [
          {
            "node": "95c5ddfe-713d-4aa1-8a8e-8ef3bbef9847",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "73aaf1e5-d195-456b-8f27-421d0341fde2": {
      "main": [
        [
          {
            "node": "95c5ddfe-713d-4aa1-8a8e-8ef3bbef9847",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "c6e3a4a0-5ad5-4112-b31f-5fe4778e6166",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 콘텐츠 제작, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
고급
노드 수27
카테고리2
노드 유형10
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

저자
Madame AI Team | Kai

Madame AI Team | Kai

@madame-ai

I’m a PhD in Physics turned AI enthusiast, passionate about uncovering how AI is transforming content creation, business, and daily life.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34