8
n8n 中文网amn8n.com

AI职位相关性评分器

高级

这是一个自动化工作流,包含 20 个节点。主要使用 If, Code, Merge, FormTrigger, HttpRequest 等节点。 AI职位相关性评分器:使用GPT-4o-mini搜索LinkedIn职位并保存到Google Sheets

前置要求
  • 可能需要目标 API 的认证凭证
  • Google Sheets API 凭证
  • OpenAI API Key

分类

-
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "xqRJgn9kLzy60dnX",
  "meta": {
    "instanceId": "86964b8d0664d9ba346a233f6936cccbf83e087b0b9c3cb22f6eaa1a271cad0d",
    "templateCredsSetupCompleted": true
  },
  "name": "职位抓取器",
  "tags": [],
  "nodes": [
    {
      "id": "ecd0d08a-44ca-4390-9eff-01f0719abc61",
      "name": "现有职位",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1824,
        160
      ],
      "parameters": {
        "options": {
          "dataLocationOnSheet": {
            "values": {
              "range": "C:C",
              "rangeDefinition": "specifyRangeA1"
            }
          }
        },
        "sheetName": {
          "__rl": true,
          "mode": "name",
          "value": "Jobs Tracker"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('On form submission').first().json[\"Link to your Google Sheet (jobs will be added here)\"] }}"
        }
      },
      "executeOnce": true,
      "notesInFlow": true,
      "typeVersion": 4.7,
      "alwaysOutputData": true
    },
    {
      "id": "3ccf8c71-7ad0-47a3-b006-bc1fa5e60023",
      "name": "编译参数集",
      "type": "n8n-nodes-base.code",
      "position": [
        96,
        0
      ],
      "parameters": {
        "jsCode": "// Get values from input item\nlet contractType = $input.first().json[\"Contract Type\"];\nlet experienceLevel = $input.first().json[\"Experience Level\"]; \nlet workType = $input.first().json[\"Working Mode\"];\nlet publishedAt = $input.first().json[\"Date Posted\"];\n\n// Mapping functions\nfunction mapContractType(value) {\n  if (!value) return null;\n  switch (value) {\n    case \"Full-time\": return \"F\";\n    case \"Part-time\": return \"P\";\n    case \"Contract\": return \"C\";\n    case \"Temporary\": return \"T\";\n    case \"Internship\": return \"I\";\n    case \"Volunteer\": return \"V\";\n    default: return null;\n  }\n}\n\nfunction mapExperienceLevel(value) {\n  if (!value) return null;\n  switch (value) {\n    case \"Internship\": return \"1\";\n    case \"Entry-level\": return \"2\";\n    case \"Associate\": return \"3\";\n    case \"Mid-senior level\": return \"4\";\n    case \"Director\": return \"5\";\n    default: return null;\n  }\n}\n\nfunction mapWorkType(value) {\n  if (!value) return null;\n  switch (value) {\n    case \"On-site\": return \"1\";\n    case \"Remote\": return \"2\";\n    case \"Hybrid\": return \"3\";\n    default: return null;\n  }\n}\n\nfunction mapPublishedAt(value) {\n  if (!value) return null;\n  switch (value) {\n    case \"Past 24 hours\": return \"r86400\";\n    case \"Past Week\": return \"r604800\";\n    case \"Past Month\": return \"r2592000\";\n    default: return null;\n  }\n}\n\n// Map all to codes\ncontractType = mapContractType(contractType);\nexperienceLevel = mapExperienceLevel(experienceLevel);\nworkType = mapWorkType(workType);\npublishedAt = mapPublishedAt(publishedAt);\n\nconst rowMap = {\n    r86400: 100,\n    r604800: 300,\n    r2592000: 600,\n};\n\n// Build output, excluding nulls\nconst output = {\n  title: $input.first().json.title,\n  location: $input.first().json.location,\n  rows: rowMap[publishedAt] || 100,\n};\n\nif (contractType !== null) output.contractType = contractType;\nif (experienceLevel !== null) output.experienceLevel = experienceLevel;\nif (workType !== null) output.workType = workType;\nif (publishedAt !== null) output.publishedAt = publishedAt;\n\nreturn [{ json: output }];\n"
      },
      "typeVersion": 2,
      "alwaysOutputData": false
    },
    {
      "id": "aceab631-3ca5-4cc3-923f-6406ad426b81",
      "name": "移除现有职位",
      "type": "n8n-nodes-base.merge",
      "notes": "from input 1",
      "position": [
        1952,
        0
      ],
      "parameters": {
        "mode": "combine",
        "options": {
          "fuzzyCompare": true
        },
        "joinMode": "keepNonMatches",
        "outputDataFrom": "input1",
        "fieldsToMatchString": "id"
      },
      "notesInFlow": true,
      "typeVersion": 3.2,
      "alwaysOutputData": true
    },
    {
      "id": "eb80bc2e-04a4-42e3-afba-6472fdcbac5b",
      "name": "筛选职位",
      "type": "n8n-nodes-base.code",
      "position": [
        1360,
        -16
      ],
      "parameters": {
        "jsCode": "// Get all GPT output items\nconst gptOutput = $input.all().map(item => item.json);\nconst targetScore = $('On form submission').first().json[\"Target Relevancy Score(out of 100)\"];\n\n// Extract jobs, filter by relevancy_score, and format\nconst filtered = gptOutput\n  .map(entry => entry.message?.content)\n  .filter(job => job && job.relevancy_score >= targetScore)\n  .map(job => ({\n    json: {\n      id: job.id,\n      relevancy_score: job.relevancy_score\n    }\n  }));\n\nreturn filtered;\n"
      },
      "notesInFlow": true,
      "typeVersion": 2,
      "alwaysOutputData": true
    },
    {
      "id": "e24fe095-02be-48d0-a94d-cb36ea80b2ae",
      "name": "筛选和去重职位",
      "type": "n8n-nodes-base.code",
      "position": [
        656,
        0
      ],
      "parameters": {
        "jsCode": "const blacklisted_companies = [\"Jobot\", \"TieTalent\", \"Pryor Associates Executive Search\"];\n\nconst jobs = $input.all().map(item => item.json);\n\n// Deduplicate by id\nconst uniqueJobs = Array.from(\n  new Map(jobs.map(job => [job.id, job])).values()\n);\n\n// Filter out blacklisted companies and jobs without companyUrl\nconst filteredJobs = uniqueJobs.filter(\n  job => job.companyUrl && !blacklisted_companies.includes(job.companyName)\n);\n\n// Deduplicate by title + companyName (keep first only)\nconst seen = new Set();\nconst finalJobs = filteredJobs.filter(job => {\n  const key = job.title + \"|\" + job.companyName;\n  if (seen.has(key)) return false;  // skip duplicates\n  seen.add(key);\n  return true;  // keep first\n});\n\nreturn finalJobs.map(job => ({ json: job }));"
      },
      "notesInFlow": true,
      "typeVersion": 2,
      "alwaysOutputData": true
    },
    {
      "id": "0f335618-d674-4012-8511-2de6cc356a6e",
      "name": "添加职位",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2320,
        -16
      ],
      "parameters": {
        "columns": {
          "value": {
            "id": "={{ $json.id }}",
            "Score": "={{ $json.relevancy_score }}",
            "Salary": "={{ $json.salary }}",
            "HR Name": "={{ $json.posterFullName }}",
            "Job URL": "={{ $json.applyUrl }}",
            "Job URL2": "={{ $json.jobUrl }}",
            "Job Title": "={{ $json.title }}",
            "Date Posted": "={{ $json.publishedAt }}",
            "HR LinkedIn": "={{ $json.posterProfileUrl }}",
            "Company Name": "={{ $json.companyName }}",
            "Job Location": "={{ $json.location }}",
            "Company Profile": "={{ $json.companyUrl }}"
          },
          "schema": [
            {
              "id": "Job URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Job URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Job URL2",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Job URL2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "id",
              "defaultMatch": true,
              "canBeUsedToMatch": true
            },
            {
              "id": "Job Title",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Job Title",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Company Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Company Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Salary",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Salary",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Company Profile",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Company Profile",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Working Model",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Working Model",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Job Location",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Job Location",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Date Posted",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Date Posted",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Application Status",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Application Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Date Applied",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Date Applied",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Score",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Score",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Feedback",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Feedback",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Cover Letter",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Cover Letter",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Resume",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Resume",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "HR Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "HR Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "HR LinkedIn",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "HR LinkedIn",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Notes",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Notes",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "name",
          "value": "Jobs Tracker"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "={{ $('On form submission').first().json[\"Link to your Google Sheet (jobs will be added here)\"] }}"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "udbu9Gbjt5CAnxWD",
          "name": "Google Sheets account"
        }
      },
      "notesInFlow": true,
      "typeVersion": 4.7
    },
    {
      "id": "6afd2b41-f733-45b3-85c6-5faba765e35e",
      "name": "获取领英职位",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        384,
        0
      ],
      "parameters": {
        "url": "https://api.apify.com/v2/acts/BHzefUZlZRKWxkTck/run-sync-get-dataset-items",
        "method": "POST",
        "options": {},
        "jsonBody": "={{ $json }}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Accept",
              "value": "application/json"
            },
            {
              "name": "Authorization",
              "value": "=Bearer <your_apify_api>"
            }
          ]
        }
      },
      "notesInFlow": true,
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "0208b796-b40e-47f0-a67c-5f437f02f301",
      "name": "表单提交时",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -192,
        0
      ],
      "webhookId": "8dbd31ae-e835-42cd-979e-88f8dd6ffded",
      "parameters": {
        "options": {
          "path": "jobs-scraper",
          "buttonLabel": "Find Jobs",
          "appendAttribution": false,
          "respondWithOptions": {
            "values": {
              "formSubmittedText": "Your request processed successfully."
            }
          }
        },
        "formTitle": "Jobs Scraper",
        "formFields": {
          "values": [
            {
              "fieldLabel": "title",
              "placeholder": "e.g Data Analyst, Data Enginner, Software Engineer",
              "requiredField": true
            },
            {
              "fieldLabel": "location",
              "placeholder": "e.g Austin, United States",
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Contract Type",
              "fieldOptions": {
                "values": [
                  {
                    "option": "All"
                  },
                  {
                    "option": "Full-time"
                  },
                  {
                    "option": "Part-time"
                  },
                  {
                    "option": "Contract"
                  },
                  {
                    "option": "Temporary"
                  },
                  {
                    "option": "Internship"
                  },
                  {
                    "option": "Volunteer"
                  }
                ]
              }
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Experience Level",
              "fieldOptions": {
                "values": [
                  {
                    "option": "All"
                  },
                  {
                    "option": "Internship"
                  },
                  {
                    "option": "Entry-level"
                  },
                  {
                    "option": "Associate"
                  },
                  {
                    "option": "Mid-senior level"
                  },
                  {
                    "option": "Director"
                  }
                ]
              }
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Working Mode",
              "fieldOptions": {
                "values": [
                  {
                    "option": "all"
                  },
                  {
                    "option": "On-site"
                  },
                  {
                    "option": "Remote"
                  },
                  {
                    "option": "Hybrid"
                  }
                ]
              }
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Date Posted",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Past 24 hours"
                  },
                  {
                    "option": "Past Week"
                  },
                  {
                    "option": "Past Month"
                  }
                ]
              }
            },
            {
              "fieldType": "number",
              "fieldLabel": "Target Relevancy Score(out of 100)",
              "placeholder": "how relevant the jobs should be to your resume",
              "requiredField": true
            },
            {
              "fieldLabel": "Link to your Google Sheet (jobs will be added here)",
              "requiredField": true
            },
            {
              "fieldType": "textarea",
              "fieldLabel": "Your Resume",
              "placeholder": "Paste Your Resume",
              "requiredField": true
            },
            {
              "fieldType": "textarea",
              "fieldLabel": "Your Job Instructions/Preferences",
              "placeholder": "Enter Your Job Preferences or any criteria to rank relevant jobs for you",
              "requiredField": true
            }
          ]
        },
        "responseMode": "lastNode",
        "formDescription": "Provide your preferences to extract the relevant jobs. The Google Sheet should follow this template: https://docs.google.com/spreadsheets/d/1oOigTwntedPCYiXwW-98oHDj4slYepsFFV-LLP-77uc/edit?gid=0#gid=0"
      },
      "notesInFlow": true,
      "typeVersion": 2.3
    },
    {
      "id": "b3e1bb3a-b77e-472e-b86a-b585df277088",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -272,
        -208
      ],
      "parameters": {
        "color": 5,
        "width": 272,
        "height": 352,
        "content": "* 通过公共表单收集用户输入,如简历、偏好和 Google Sheet 链接"
      },
      "typeVersion": 1
    },
    {
      "id": "395c6d0a-eb70-4e36-b0f9-4db3a823c9e7",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        16,
        -208
      ],
      "parameters": {
        "color": 6,
        "width": 272,
        "height": 352,
        "content": "将表单选择(合同类型、经验等)转换为适用于 Apify 领英职位抓取器的 API 参数"
      },
      "typeVersion": 1
    },
    {
      "id": "08eebd8a-4b77-44a2-9fa7-6cbbd8c28f77",
      "name": "便签2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        304,
        -208
      ],
      "parameters": {
        "color": 5,
        "width": 272,
        "height": 352,
        "content": "* 调用 Apify API 根据您的参数获取职位列表"
      },
      "typeVersion": 1
    },
    {
      "id": "ab00b3bd-25b6-45a2-920a-cbc09a8edd90",
      "name": "如果有职位",
      "type": "n8n-nodes-base.if",
      "position": [
        880,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c6fa73ec-5859-48c4-9085-68e04ba07b21",
              "operator": {
                "type": "object",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json }}",
              "rightValue": "running"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "c666e264-2ea8-4c73-b0a5-b38bae070da1",
      "name": "便签3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        592,
        -208
      ],
      "parameters": {
        "color": 6,
        "width": 448,
        "height": 352,
        "content": "移除重复项,筛选出黑名单公司,并排除没有有效公司资料的职位"
      },
      "typeVersion": 1
    },
    {
      "id": "201b0934-417f-4d00-9fd3-7986df544192",
      "name": "如果有职位1",
      "type": "n8n-nodes-base.if",
      "position": [
        1504,
        -16
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "4c35b5be-ac2e-4843-9cbb-420afdb8f0f3",
              "operator": {
                "type": "object",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "c512a004-186e-45ea-a8ef-fa616e8f676f",
      "name": "便签4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1056,
        -208
      ],
      "parameters": {
        "color": 5,
        "width": 592,
        "height": 352,
        "content": "## 按相关性评分和筛选职位"
      },
      "typeVersion": 1
    },
    {
      "id": "58b7114e-a45a-41f2-aae2-31c4edbe1e94",
      "name": "丰富输入 1",
      "type": "n8n-nodes-base.merge",
      "position": [
        1760,
        -16
      ],
      "parameters": {
        "mode": "combine",
        "options": {
          "fuzzyCompare": true,
          "clashHandling": {
            "values": {
              "resolveClash": "preferLast",
              "overrideEmpty": true
            }
          },
          "multipleMatches": "first"
        },
        "joinMode": "enrichInput1",
        "fieldsToMatchString": "id"
      },
      "notesInFlow": true,
      "typeVersion": 3.2
    },
    {
      "id": "3be05870-9c10-4a9b-b8dc-0052833d3448",
      "name": "如果有职位2",
      "type": "n8n-nodes-base.if",
      "position": [
        2112,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "162163ba-1211-4255-aeed-038a40d0522b",
              "operator": {
                "type": "object",
                "operation": "notEmpty",
                "singleValue": true
              },
              "leftValue": "={{ $json }}",
              "rightValue": "running"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "05163604-3788-4147-a8d4-9be81426ae5a",
      "name": "便签5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1664,
        -208
      ],
      "parameters": {
        "color": 6,
        "width": 784,
        "height": 528,
        "content": "## 将新职位添加到 Google Sheet"
      },
      "typeVersion": 1
    },
    {
      "id": "ed9af293-d933-4a67-8ba7-fd9a816d0a22",
      "name": "职位评分",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1088,
        -16
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "GPT-4O-MINI"
        },
        "options": {
          "temperature": 0.4
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are an expert recruiter and job relevance evaluator. Please find a relevancy score for a given job against the Candidate Resume and Preferences. \n\nCandidate Resume:\n{{ $('On form submission').first().json['Your Resume'] }}\n\nCandidate Preferences:\n{{ $('On form submission').first().json[\"Your Job Instructions/Preferences\"] }}\n\nImportant Notes:\n- If salary is not given under job details, check it in the job_description or job_position.\n- When giving the relevancy score, be strict and give a good score(>80) to only those jobs that are highly relevant for the candidate.\n\n⚠️ Output format requirement:\nAlways return only a JSON array with exactly one object, in this structure:\n[\n  {\n    \"id\": \"...\",\n    \"relevancy_score\": <integer 0-100>\n  }\n]\nNo other text, comments, or formatting.\n"
            },
            {
              "content": "=Evaluate this job against the candidate resume + preferences.\n\nJob details:\n- id: {{ $json.id }}\n- job_position: {{ $json.title }}\n- salary: {{ $json.salary }}\n- job_description: {{ $json.description }}\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "executeOnce": false,
      "retryOnFail": true,
      "typeVersion": 1.8,
      "waitBetweenTries": 5000
    },
    {
      "id": "f4540ed0-bc13-4472-b09f-87f09e892de0",
      "name": "便签6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        -208
      ],
      "parameters": {
        "width": 736,
        "height": 688,
        "content": "## 🧠 AI 驱动的职位抓取与相关性评估器"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "bddb5d81-b4a0-49ce-b31e-49f5b7467321",
  "connections": {
    "ab00b3bd-25b6-45a2-920a-cbc09a8edd90": {
      "main": [
        [
          {
            "node": "ed9af293-d933-4a67-8ba7-fd9a816d0a22",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0f335618-d674-4012-8511-2de6cc356a6e": {
      "main": [
        []
      ]
    },
    "201b0934-417f-4d00-9fd3-7986df544192": {
      "main": [
        [
          {
            "node": "ecd0d08a-44ca-4390-9eff-01f0719abc61",
            "type": "main",
            "index": 0
          },
          {
            "node": "58b7114e-a45a-41f2-aae2-31c4edbe1e94",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "3be05870-9c10-4a9b-b8dc-0052833d3448": {
      "main": [
        [
          {
            "node": "0f335618-d674-4012-8511-2de6cc356a6e",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "ed9af293-d933-4a67-8ba7-fd9a816d0a22": {
      "main": [
        [
          {
            "node": "eb80bc2e-04a4-42e3-afba-6472fdcbac5b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ecd0d08a-44ca-4390-9eff-01f0719abc61": {
      "main": [
        [
          {
            "node": "aceab631-3ca5-4cc3-923f-6406ad426b81",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "58b7114e-a45a-41f2-aae2-31c4edbe1e94": {
      "main": [
        [
          {
            "node": "aceab631-3ca5-4cc3-923f-6406ad426b81",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "eb80bc2e-04a4-42e3-afba-6472fdcbac5b": {
      "main": [
        [
          {
            "node": "201b0934-417f-4d00-9fd3-7986df544192",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "aceab631-3ca5-4cc3-923f-6406ad426b81": {
      "main": [
        [
          {
            "node": "3be05870-9c10-4a9b-b8dc-0052833d3448",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3ccf8c71-7ad0-47a3-b006-bc1fa5e60023": {
      "main": [
        [
          {
            "node": "6afd2b41-f733-45b3-85c6-5faba765e35e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0208b796-b40e-47f0-a67c-5f437f02f301": {
      "main": [
        [
          {
            "node": "3ccf8c71-7ad0-47a3-b006-bc1fa5e60023",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6afd2b41-f733-45b3-85c6-5faba765e35e": {
      "main": [
        [
          {
            "node": "e24fe095-02be-48d0-a94d-cb36ea80b2ae",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e24fe095-02be-48d0-a94d-cb36ea80b2ae": {
      "main": [
        [
          {
            "node": "ab00b3bd-25b6-45a2-920a-cbc09a8edd90",
            "type": "main",
            "index": 0
          },
          {
            "node": "58b7114e-a45a-41f2-aae2-31c4edbe1e94",
            "type": "main",
            "index": 1
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

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

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

高级

需要付费吗?

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

工作流信息
难度等级
高级
节点数量20
分类-
节点类型8
难度说明

适合高级用户,包含 16+ 个节点的复杂工作流

外部链接
在 n8n.io 查看

分享此工作流

分类

分类: 34