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": "使用Dumpling AI和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": "保存截图到Google Drive文件夹",
      "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": "### 📸 自动化截图捕获和文本提取"
      },
      "typeVersion": 1
    },
    {
      "id": "657a7360-b9d1-40c5-93a5-be032c22de88",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        -360
      ],
      "parameters": {
        "width": 960,
        "height": 220,
        "content": "### 🛍️ 使用GPT-4o提取和存储产品列表"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "991d7669-24c9-40b5-b921-07c63f9778c0",
  "connections": {
    "Download Screenshot File": {
      "main": [
        [
          {
            "node": "Save Screenshot to Drive Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trigger on New URL in Sheet": {
      "main": [
        [
          {
            "node": "Take Full-Page Screenshot using Dumpling AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save Screenshot to Drive Folder": {
      "main": [
        [
          {
            "node": " Log Screenshot URL to Spreadsheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    " Log Screenshot URL to Spreadsheet": {
      "main": [
        [
          {
            "node": "Extract Product Info from Screenshot Text with GPT-4o",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    " Split Each Product into Individual Record": {
      "main": [
        [
          {
            "node": "Save Products info to Google Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Take Full-Page Screenshot using Dumpling AI": {
      "main": [
        [
          {
            "node": "Extract All Visible Data from Screenshot (Dumpling AI)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Product Info from Screenshot Text with GPT-4o": {
      "main": [
        [
          {
            "node": " Split Each Product into Individual Record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract All Visible Data from Screenshot (Dumpling AI)": {
      "main": [
        [
          {
            "node": "Download Screenshot File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - 人工智能, 营销

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量11
分类2
节点类型7
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

外部链接
在 n8n.io 查看

分享此工作流