8
n8n 한국어amn8n.com

Phantombuster를 사용한 LinkedIn 게시물 상호작용

중급

이것은AI, Marketing분야의자동화 워크플로우로, 14개의 노드를 포함합니다.주로 HttpRequest, GoogleSheets, Agent, ScheduleTrigger, LmChatOpenAi 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. Phantombuster, OpenAI GPT 및 Google Sheets를 사용한 자동화된 LinkedIn 상호작용 추적

사전 요구사항
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "kMppQ9OLVQ08LU6M",
  "meta": {
    "instanceId": "84ad02d6104594179f43f1ce9cfe3a81637b2faedb57dafcb9e649b7542988db",
    "templateCredsSetupCompleted": true
  },
  "name": "LinkedIn Post Engagement using Phantombuster",
  "tags": [],
  "nodes": [
    {
      "id": "9374a17f-fb35-4862-ba86-d52d0c616ee6",
      "name": "매일 트리거 - 오전 9시",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        0,
        0
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 9
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c71ab77a-b12d-4966-a33f-d7204f5d31fd",
      "name": "LinkedIn 게시물 스크레이퍼",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        220,
        0
      ],
      "parameters": {
        "url": "https://api.phantombuster.com/api/v2/agent/launch",
        "method": "POST",
        "options": {},
        "jsonBody": "{\n  \"id\": \"YOUR_AGENT_ID\",\n  \"arguments\": {\n    \"profileUrls\": [\n      \"https://www.linkedin.com/in/USERNAME/\"\n    ],\n    \"numberOfPosts\": 1\n  },\n  \"save\": false\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Phantombuster-Key-1",
              "value": "YOUR_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "9b7dc781-3726-4ce0-a551-57f3b304aebd",
      "name": "스크레이퍼 결과 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        440,
        0
      ],
      "parameters": {
        "url": "https://api.phantombuster.com/api/v2/agent/fetch-output",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "id",
              "value": "YOUR_AGENT_ID"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Phantombuster-Key-1",
              "value": "YOUR_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f7f1e974-9522-4692-9af8-1674bac0341a",
      "name": "댓글 작성 에이전트",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        940,
        0
      ],
      "parameters": {
        "text": "=You are a professional LinkedIn marketer. Your job is to write engaging, thoughtful, and relevant comments for posts to increase visibility and connection with the author.\n\nHere is the latest LinkedIn post:\n\nAuthor: {{ $json.authorName }}\nProfile: {{ $json.authorProfile }}\nPost URL: {{ $json.postUrl }}\nDate: {{ $json.date }}\nContent:\n\"\"\"\n{{ $json.text }}\n\"\"\"\n\nWrite a concise and personalized comment (1–2 sentences max) that:\n- Adds value to the conversation\n- Feels human and not generic\n- Avoids spammy language\n- Uses a positive and professional tone\n\nOnly return the comment text. Do not include quotation marks or any intro.",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 1.9
    },
    {
      "id": "d58b36e6-b24b-450b-9577-2da590c51d96",
      "name": "댓글 생성 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        880,
        240
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "wYwTjEv45IzlAOAu",
          "name": "OpenAi account 2"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "cd761bd8-1d94-4e28-ade5-a4e69b463124",
      "name": "LinkedIn 게시물 좋아요",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1760,
        -140
      ],
      "parameters": {
        "url": "https://api.phantombuster.com/api/v2/agent/launch",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"id\": \"YOUR_LIKER_AGENT_ID\",\n  \"arguments\": {\n    \"postUrls\": [\n      {{ $('Fetch Scraper Results').item.json.postUrl }}\n    ]\n  },\n  \"save\": false\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Phantombuster-Key-1",
              "value": "YOUR_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "337498aa-ee44-4f92-bd46-7bbdc982960d",
      "name": "LinkedIn 댓글 게시",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1760,
        140
      ],
      "parameters": {
        "url": "https://api.phantombuster.com/api/v2/agent/launch",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"id\": \"YOUR_COMMENTER_AGENT_ID\",\n  \"arguments\": {\n    \"postUrls\": [\n      {{ $('Fetch Scraper Results').item.json.postUrl }}\n    ],\n    \"comments\": [\n      {{ $json.output }}\n    ]\n  },\n  \"save\": false\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Phantombuster-Key-1",
              "value": "YOUR_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "27e6fab8-c8e9-4613-a8c1-1fb8306b9c46",
      "name": "활동 내역 시트에 기록",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2360,
        -20
      ],
      "parameters": {
        "columns": {
          "value": {
            "Comment": "={{ $('Commenter Agent').item.json.output }}",
            "PostUrl": "={{ $('Fetch Scraper Results').item.json.postUrl }}",
            "Post text": "={{ $('Fetch Scraper Results').item.json.text }}",
            "Timestamp": "={{ $('Fetch Scraper Results').item.json.timestamp }}",
            "AuthorName": "={{ $('Fetch Scraper Results').item.json.authorName }}",
            "AuthorProfile": "={{ $('Fetch Scraper Results').item.json.authorProfile }}"
          },
          "schema": [
            {
              "id": "AuthorName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "AuthorName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "AuthorProfile",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "AuthorProfile",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PostUrl",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PostUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Post text",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Post text",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Comment",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Comment",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Timestamp",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Timestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/15h8fYaIVsC7HZf5-KsPA8tx-459ulURB5UEMC62Khzk/edit?usp=drivesdk",
          "cachedResultName": "LinkedIn auto liker and commenter"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "K5yYfUnKFTqaRn6A",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "6f8ccb5f-ddfd-4524-8098-51f027712203",
      "name": "스티키 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -40,
        -760
      ],
      "parameters": {
        "color": 3,
        "width": 640,
        "height": 940,
        "content": "## 🔹 **Section 1: Trigger and Data Collection**\n\n### 📍Nodes Involved:\n\n* `Daily Trigger - 9 AM`\n* `Start LinkedIn Posts Scraper`\n* `Fetch Scraper Results`\n\n### ✅ **Purpose:**\n\nThis section is responsible for **automatically collecting LinkedIn post data** every day at a specific time.\n\n### 🔍 **Details:**\n\n1. **Daily Trigger - 9 AM**\n\n   * Starts the workflow automatically every day at 9 AM.\n   * Ensures the process runs consistently without manual intervention.\n\n2. **Start LinkedIn Posts Scraper**\n\n   * Sends a `POST` request to Phantombuster's API.\n   * Starts the \"LinkedIn Profile Posts Scraper\" Phantom to collect recent LinkedIn posts from specified profiles.\n\n3. **Fetch Scraper Results**\n\n   * Sends a `GET` request to retrieve the output from the scraping job.\n   * Extracts post data such as post ID, content, author, timestamp, etc.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "eca7d2c9-342f-4db0-a6b1-c5132f0af256",
      "name": "스티키 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        -680
      ],
      "parameters": {
        "color": 5,
        "width": 580,
        "height": 1080,
        "content": "## 🔹 **Section 2: AI-Based Content Analysis and Comment Generation**\n\n### 📍Nodes Involved:\n\n* `Generate LinkedIn Comment`\n* `Comment Generation Model`\n\n### ✅ **Purpose:**\n\nTo **analyze the content of each scraped LinkedIn post** and use AI to generate relevant and context-aware comments.\n\n### 🔍 **Details:**\n\n1. **Generate LinkedIn Comment**\n\n   * Acts as the AI Agent that facilitates the interaction between the post content and the AI model.\n   * Prepares the data (e.g., extracts post content) and sends it to the model.\n\n2. **Comment Generation Model**\n\n   * Powered by OpenAI's language model.\n   * Processes the post content and returns a thoughtful, engaging comment tailored to the post topic."
      },
      "typeVersion": 1
    },
    {
      "id": "c47a8e47-cab6-4e47-90d9-41c6e5b56189",
      "name": "스티키 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1580,
        -820
      ],
      "parameters": {
        "color": 7,
        "width": 460,
        "height": 1140,
        "content": "## 🔹 **Section 3: Post Engagement Automation**\n\n### 📍Nodes Involved:\n\n* `Like LinkedIn Post`\n* `Post LinkedIn Comment`\n\n### ✅ **Purpose:**\n\nTo **interact with LinkedIn posts** by liking and commenting using the generated content.\n\n### 🔍 **Details:**\n\n1. **Like LinkedIn Post**\n\n   * Sends a `POST` request to Phantombuster to like the LinkedIn post.\n   * This increases engagement and visibility.\n\n2. **Post LinkedIn Comment**\n\n   * Sends a `POST` request with the AI-generated comment to the LinkedIn post.\n   * Engages the post author and audience in a meaningful way.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "36083131-b3de-4d8c-8d7c-941368fb6312",
      "name": "스티키 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2180,
        -560
      ],
      "parameters": {
        "color": 2,
        "width": 480,
        "height": 720,
        "content": "## 🔹 **Section 4: Result Logging and Storage**\n\n### 📍Nodes Involved:\n\n* `Log Activity to Sheet`\n\n### ✅ **Purpose:**\n\nTo **store all the interactions and results in a structured format** for tracking and analysis.\n\n### 🔍 **Details:**\n\n1. **Log Activity to Sheet**\n\n   * Appends data (e.g., post URL, comment, status, timestamp) to a Google Sheets document.\n   * Helps maintain records, monitor performance, and debug issues if necessary.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "9f6c0756-449a-45c4-ab49-080576be9651",
      "name": "스티키 노트9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1920,
        -760
      ],
      "parameters": {
        "color": 4,
        "width": 1300,
        "height": 320,
        "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
      },
      "typeVersion": 1
    },
    {
      "id": "df8bc986-f7b8-4378-a0cd-737a15e0279e",
      "name": "스티키 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1920,
        -420
      ],
      "parameters": {
        "color": 4,
        "width": 1289,
        "height": 3378,
        "content": "# 🔄 **Automated LinkedIn Engagement Workflow**\n\nThis workflow is designed to **automate the process of collecting LinkedIn posts**, analyzing them with AI, **engaging with them** (liking and commenting), and **logging the actions** in Google Sheets. It runs **daily at 9 AM**, ensuring consistent and timely interaction.\n\n---\n\n## 🧭 **Workflow Overview**\n\nThe workflow is divided into **4 key sections**:\n\n1. **Trigger & Data Collection**\n2. **AI Analysis & Comment Generation**\n3. **LinkedIn Post Engagement**\n4. **Logging & Storage**\n\nEach section is detailed below.\n\n---\n\n## 🔹 Section 1: Trigger & Data Collection\n\n### 📅 **Node: `Daily Trigger - 9 AM`**\n\n* **Type**: Schedule Trigger\n* **Purpose**: Initiates the workflow every day at 9:00 AM automatically.\n* **Benefit**: Removes the need for manual execution, ensuring timely and consistent operation.\n\n---\n\n### 🌐 **Node: `Start LinkedIn Posts Scraper`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/…`\n* **Purpose**: Starts Phantombuster’s “LinkedIn Profile Posts Scraper” Phantom.\n* **Function**: Sends a request to begin scraping recent posts from specified LinkedIn profiles.\n* **Input**: List of profile URLs, authentication details.\n\n---\n\n### 🌐 **Node: `Fetch Scraper Results`**\n\n* **Type**: HTTP Request (GET)\n* **Endpoint**: `https://api.phantombuster.com/…`\n* **Purpose**: Retrieves the results of the scraping operation.\n* **Output**: JSON data of LinkedIn posts (content, timestamp, author, URL, post ID).\n\n---\n\n## 🔹 Section 2: AI Analysis & Comment Generation\n\n### 🤖 **Node: `Generate LinkedIn Comment`**\n\n* **Type**: AI Agent (Tool Integrator)\n* **Purpose**: Acts as the mediator between the scraped post content and the AI model.\n* **Function**:\n\n  * Extracts post content from the fetched data.\n  * Sends it to the AI for contextual understanding and comment generation.\n\n---\n\n### 🧠 **Node: `Comment Generation Model`**\n\n* **Type**: OpenAI Chat Model (e.g., GPT)\n* **Purpose**: Generates a personalized, thoughtful comment based on the LinkedIn post.\n* **Input**: Post content and context.\n* **Output**: Human-like comment relevant to the post's theme.\n\n---\n\n## 🔹 Section 3: LinkedIn Post Engagement\n\n### 👍 **Node: `Like LinkedIn Post`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/…`\n* **Purpose**: Likes the target LinkedIn post.\n* **Function**:\n\n  * Increases post visibility.\n  * Adds a lightweight engagement action before commenting.\n\n---\n\n### 💬 **Node: `Post LinkedIn Comment`**\n\n* **Type**: HTTP Request (POST)\n* **Endpoint**: `https://api.phantombuster.com/…`\n* **Purpose**: Posts the AI-generated comment to the post.\n* **Function**:\n\n  * Completes the engagement cycle.\n  * Ensures comments are context-aware and professional.\n\n---\n\n## 🔹 Section 4: Logging & Storage\n\n### 📄 **Node: `Log Activity to Sheet`**\n\n* **Type**: Google Sheets (Append)\n\n* **Purpose**: Logs all workflow results into a Google Sheet.\n\n* **Data Logged**:\n\n  * Post URL\n  * Post content (optional)\n  * AI-generated comment\n  * Status of like/comment actions\n  * Timestamps\n\n* **Benefit**: Provides a centralized log for auditing, review, or further analytics.\n\n---\n\n## ✅ **Key Benefits of This Workflow**\n\n* **Automation**: Runs daily with zero manual effort.\n* **Intelligent Engagement**: AI-powered comment generation ensures relevance and tone.\n* **Tracking & Transparency**: Google Sheets logging ensures every step is recorded.\n* **Scalability**: Easily extendable to more profiles or engagement types.\n\n---\n\n## 📈 **Future Enhancements (Suggestions)**\n\n* Add error handling and retry logic for failed API calls.\n* Include sentiment analysis to refine comment tone.\n* Enable Slack/Email alerts for daily summary.\n* Add filters to only comment on posts with certain keywords or engagement levels.\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "6db64df0-bacb-483a-833c-e23893831a22",
  "connections": {
    "f7f1e974-9522-4692-9af8-1674bac0341a": {
      "main": [
        [
          {
            "node": "cd761bd8-1d94-4e28-ade5-a4e69b463124",
            "type": "main",
            "index": 0
          },
          {
            "node": "337498aa-ee44-4f92-bd46-7bbdc982960d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cd761bd8-1d94-4e28-ade5-a4e69b463124": {
      "main": [
        [
          {
            "node": "27e6fab8-c8e9-4613-a8c1-1fb8306b9c46",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9374a17f-fb35-4862-ba86-d52d0c616ee6": {
      "main": [
        [
          {
            "node": "c71ab77a-b12d-4966-a33f-d7204f5d31fd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9b7dc781-3726-4ce0-a551-57f3b304aebd": {
      "main": [
        [
          {
            "node": "f7f1e974-9522-4692-9af8-1674bac0341a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "337498aa-ee44-4f92-bd46-7bbdc982960d": {
      "main": [
        [
          {
            "node": "27e6fab8-c8e9-4613-a8c1-1fb8306b9c46",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c71ab77a-b12d-4966-a33f-d7204f5d31fd": {
      "main": [
        [
          {
            "node": "9b7dc781-3726-4ce0-a551-57f3b304aebd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d58b36e6-b24b-450b-9577-2da590c51d96": {
      "ai_languageModel": [
        [
          {
            "node": "f7f1e974-9522-4692-9af8-1674bac0341a",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

중급 - 인공지능, 마케팅

유료인가요?

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

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

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

저자
Yaron Been

Yaron Been

@yaron-nofluff

Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host If you need any help with Automations, feel free to reach out via linkedin: https://www.linkedin.com/in/yaronbeen/ And check out my Youtube channel: https://www.youtube.com/@YaronBeen/videos

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34