8
n8n 한국어amn8n.com

Dumpling AI와 GPT-4o를 사용하여 웹 스크린샷에서 제품 정보 추출

중급

이것은AI, Marketing분야의자동화 워크플로우로, 11개의 노드를 포함합니다.주로 SplitOut, GoogleDrive, HttpRequest, GoogleSheets, OpenAi 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. Dumpling AI와 GPT-4o를 통해 웹 캡처에서 제품 정보를 추출

사전 요구사항
  • Google Drive API 인증 정보
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "D3YKQWTlFoSxj7lp",
  "meta": {
    "instanceId": "a1ae5c8dc6c65e674f9c3947d083abcc749ef2546dff9f4ff01de4d6a36ebfe6",
    "templateCredsSetupCompleted": true
  },
  "name": "Extract Product Info from Webpage Screenshots using Dumpling AI and GPT-4o",
  "tags": [],
  "nodes": [
    {
      "id": "fd1389e6-1495-4226-a158-db98a2a5b1ab",
      "name": "시트의 새 URL에서 트리거",
      "type": "n8n-nodes-base.googleSheetsTrigger",
      "position": [
        -980,
        -180
      ],
      "parameters": {
        "event": "rowAdded",
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit?usp=drivesdk",
          "cachedResultName": "Competitors"
        }
      },
      "credentials": {
        "googleSheetsTriggerOAuth2Api": {
          "id": "qDzHSzTkclwDHpSR",
          "name": "Google Sheets Trigger account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0c6cf56f-8244-4131-96c0-2dee533c68d4",
      "name": "Dumpling AI를 사용한 전체 페이지 스크린샷 촬영",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -760,
        -180
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/screenshot",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"url\":\"{{ $json.URL }}\",\n  \"fullPage\": true\n}\n",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "RLFzAcGRepr5eXZB",
          "name": "n8n"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "aa6ba2a5-6d25-4ca7-afef-05b688bf630b",
      "name": "스크린샷에서 모든 가시 데이터 추출 (Dumpling AI)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -540,
        -180
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/extract-image",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"inputMethod\": \"url\",\n  \"images\": [\"{{ $json.screenshotUrl }}\"],\n  \"prompt\": \"You are a detail-oriented assistant. Analyze the screenshot provided and extract all visible information in a clear and organized way. Include all text content exactly as it appears, labels, buttons, icons, or form field names, any numbers, figures, or timestamps, section headers or groupings, notes or messages if any, and table data or list items if present. Present the result in a neatly structured format using plain text. Do not summarize, interpret, or skip anything. Maintain the original order and layout as much as possible for clarity.\"\n}\n\n",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "RLFzAcGRepr5eXZB",
          "name": "n8n"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "574a04b5-3b5a-4f7e-830a-de3cb580e355",
      "name": "스크린샷 파일 다운로드",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -320,
        -180
      ],
      "parameters": {
        "url": "={{ $('Take Full-Page Screenshot using Dumpling AI').item.json.screenshotUrl }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "41a174e8-15e5-4c95-840d-8b6a99ac3539",
      "name": "드라이브 폴더에 스크린샷 저장",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -100,
        -180
      ],
      "parameters": {
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1TT91LtI3ods32838DMggLM8v397DTWIH",
          "cachedResultName": "Webpage-Screenshoot"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "B0Hulh0j065xznhI",
          "name": "Google Drive account 2"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "fcd1c828-0704-4d74-87f0-601320ec1740",
      "name": "스크린샷 URL을 스프레드시트에 기록",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        120,
        -180
      ],
      "parameters": {
        "columns": {
          "value": {
            "URL": "={{ $('Trigger on New URL in Sheet').item.json.URL }}",
            "screenshoot URL": "={{ $('Take Full-Page Screenshot using Dumpling AI').item.json.screenshotUrl }}"
          },
          "schema": [
            {
              "id": "URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "screenshoot URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "screenshoot URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Summary of the webpage",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Summary of the webpage",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "URL"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit?usp=drivesdk",
          "cachedResultName": "Competitors"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "GaJqJHuS5mQxap7q",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "b8d6b452-be2d-41e2-aa67-911131ad66c5",
      "name": "GPT-4o로 스크린샷 텍스트에서 제품 정보 추출",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        340,
        -180
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "GPT-4O"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=Extract only the product-related information from the text. For each product, return a JSON object with the following fields: \"name\", \"ratings\", \"purchased\", \"price\", \"deal\", \"delivery\", \"buyingOptions\", \"colorOptions\", and \"badges\". Include only the available fields for each product. If a field is not mentioned for a product, skip it. Ignore unrelated content like navigation, help, or footer sections. Return the final output as a JSON object with a top-level \"products\" array containing the structured results.\n\nExample JSON output:\n{\n  \"products\": [\n    {\n      \"name\": \"JBL Tune 510BT - Bluetooth headphones with up to 40 hours battery, microphone for call, foldable and comfortable\",\n      \"ratings\": \"76,254\",\n      \"purchased\": \"100K+ bought in past month\",\n      \"price\": \"$49.95\",\n      \"delivery\": \"FREE delivery Tue, May 27\",\n      \"deal\": \"Free 30 day Amazon music with purchase\",\n      \"buyingOptions\": \"$25.87 (2+ used & new offers)\",\n      \"colorOptions\": [\"Black\", \"Blue\", \"White\", \"Purple\"]\n    },\n    {\n      \"name\": \"Beats Studio Pro - Wireless Bluetooth Noise Cancelling Headphones\",\n      \"ratings\": \"20,437\",\n      \"purchased\": \"10K+ bought in past month\",\n      \"price\": \"$199.95\",\n      \"deal\": \"List: $349.95\",\n      \"delivery\": \"FREE delivery Tue, May 27\",\n      \"buyingOptions\": \"$146.65 (5+ used & new offers)\"\n    }\n  \n  ]\n}"
            },
            {
              "content": "=Here is the text: {{ $('Extract All Visible Data from Screenshot (Dumpling AI)').item.json.results }}"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "fdhWALG84tBLgSZT",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "2c390314-9d9c-464d-a80b-b8c1e12bb671",
      "name": "각 제품을 개별 레코드로 분할",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        716,
        -180
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "message.content.products"
      },
      "typeVersion": 1
    },
    {
      "id": "94b7e7bf-5b8f-431a-9020-ca39c409ce0d",
      "name": "제품 정보를 Google 시트에 저장",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        936,
        -180
      ],
      "parameters": {
        "columns": {
          "value": {
            "deal": "={{ $json.deal }}",
            "price": "={{ $json.price }}",
            "ratings": "={{ $json.ratings }}",
            "purchased": "={{ $json.purchased }}",
            "Product Name": "={{ $json.name }}",
            "buyingOptions": "={{ $json.buyingOptions }}"
          },
          "schema": [
            {
              "id": "Product Name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Product Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "price",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "price",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "purchased",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "purchased",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "ratings",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "ratings",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "deal",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "deal",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "buyingOptions",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "buyingOptions",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit#gid=641974727",
          "cachedResultName": "Sheet2"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1TDp408j9W1D8DF21XI5WrpeIA56qWjLBRlmWXqgo0p4/edit?usp=drivesdk",
          "cachedResultName": "Competitors"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "GaJqJHuS5mQxap7q",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "df27aa1a-1cbe-4913-90d1-09ac5a484677",
      "name": "스티키 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -360
      ],
      "parameters": {
        "width": 1000,
        "height": 220,
        "content": "### 📸 Automate Screenshot Capture & Text Extraction\n\nThis first part of the workflow begins by monitoring a Google Sheet for new URLs. When a new row is added, Dumpling AI captures a full-page screenshot of the given URL. Then, Dumpling AI’s extract-image endpoint pulls all visible text and UI elements from the screenshot. The file is downloaded and saved in Google Drive for future reference. A separate log of the screenshot URL is written back to the original spreadsheet.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "657a7360-b9d1-40c5-93a5-be032c22de88",
      "name": "스티키 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        -360
      ],
      "parameters": {
        "width": 960,
        "height": 220,
        "content": "### 🛍️ Extract and Store Product Listings with GPT-4o\n\nAfter saving the screenshot, GPT-4o receives the extracted text and processes it to identify structured product details like name, price, rating, purchase volume, deals, and buying options. Each product is split into an individual record using a Split Out node. Finally, each product is appended to a different sheet for structured logging and analysis.\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "991d7669-24c9-40b5-b921-07c63f9778c0",
  "connections": {
    "574a04b5-3b5a-4f7e-830a-de3cb580e355": {
      "main": [
        [
          {
            "node": "41a174e8-15e5-4c95-840d-8b6a99ac3539",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fd1389e6-1495-4226-a158-db98a2a5b1ab": {
      "main": [
        [
          {
            "node": "0c6cf56f-8244-4131-96c0-2dee533c68d4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "41a174e8-15e5-4c95-840d-8b6a99ac3539": {
      "main": [
        [
          {
            "node": "fcd1c828-0704-4d74-87f0-601320ec1740",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fcd1c828-0704-4d74-87f0-601320ec1740": {
      "main": [
        [
          {
            "node": "b8d6b452-be2d-41e2-aa67-911131ad66c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c390314-9d9c-464d-a80b-b8c1e12bb671": {
      "main": [
        [
          {
            "node": "94b7e7bf-5b8f-431a-9020-ca39c409ce0d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0c6cf56f-8244-4131-96c0-2dee533c68d4": {
      "main": [
        [
          {
            "node": "aa6ba2a5-6d25-4ca7-afef-05b688bf630b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b8d6b452-be2d-41e2-aa67-911131ad66c5": {
      "main": [
        [
          {
            "node": "2c390314-9d9c-464d-a80b-b8c1e12bb671",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "aa6ba2a5-6d25-4ca7-afef-05b688bf630b": {
      "main": [
        [
          {
            "node": "574a04b5-3b5a-4f7e-830a-de3cb580e355",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

중급 - 인공지능, 마케팅

유료인가요?

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

관련 워크플로우 추천

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

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

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34