8
n8n 中文网amn8n.com

使用Bright Data API和Google Sheets集成的LinkedIn职位查找自动化

高级

这是一个Other, AI领域的自动化工作流,包含 16 个节点。主要使用 If, Wait, Filter, FormTrigger, HttpRequest 等节点,结合人工智能技术实现智能自动化。 LinkedIn职位查找自动化,使用Bright Data API和Google Sheets

前置要求
  • 可能需要目标 API 的认证凭证
  • Google Sheets API 凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "Eo2mqDdtIQFdZhxp",
  "meta": {
    "instanceId": "bc8ca75c203589705ae2e446cad7181d6f2a7cc1766f958ef9f34810e53b8cb2",
    "templateCredsSetupCompleted": true
  },
  "name": "使用Bright Data API和Google Sheets集成的LinkedIn职位查找自动化",
  "tags": [],
  "nodes": [
    {
      "id": "9617d433-62f7-4ddf-bf47-a9a3208aa248",
      "name": "表单提交时1",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -660,
        -460
      ],
      "webhookId": "37d0e84c-0cda-47f8-826d-9ae5b22ba1d5",
      "parameters": {
        "options": {},
        "formTitle": "LinkedIn Job Finder",
        "formFields": {
          "values": [
            {
              "fieldLabel": "City",
              "requiredField": true
            },
            {
              "fieldLabel": "Job Title",
              "requiredField": true
            },
            {
              "fieldLabel": "Country",
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Job_type(Optional)",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Full-Time"
                  },
                  {
                    "option": "Part-Time"
                  },
                  {
                    "option": "Remote"
                  },
                  {
                    "option": "WFH"
                  },
                  {
                    "option": "Contract"
                  },
                  {
                    "option": "Internship"
                  },
                  {
                    "option": "Freelance"
                  }
                ]
              }
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "47c35950-354c-42e4-b707-60ed5b1eeb2f",
      "name": "检查最终状态",
      "type": "n8n-nodes-base.if",
      "position": [
        320,
        -460
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "35ed620d-b5d5-4e97-bcc5-52b283d85616",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "ready"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "cef9c86d-98ce-4944-9907-d815cba406f4",
      "name": "创建快照ID",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -360,
        -460
      ],
      "parameters": {
        "url": "https://api.brightdata.com/datasets/v3/trigger",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"input\": [\n    {\n      \"location\": \"{{$node['On form submission1'].json['City'] ? $node['On form submission1'].json['City'].trim() : ''}}\",\n      \"keyword\": \"{{$node['On form submission1'].json['Job Title'] ? $node['On form submission1'].json['Job Title'].trim() : ''}}\",\n      \"country\": \"{{$node['On form submission1'].json['Country'] ? $node['On form submission1'].json['Country'].slice(0, 2).toUpperCase() : ''}}\",\n      \"time_range\": \"Past week\",\n      \"job_type\": \"{{ ['full-time', 'part-time', 'internship', 'contract', 'temporary'].includes($node['On form submission1'].json['Job_type']?.toLowerCase()) ? $node['On form submission1'].json['Job_type'] : '' }}\"\n    }\n  ],\n  \"custom_output_fields\": [\n    \"url\",\n    \"job_posting_id\",\n    \"job_title\",\n    \"company_name\",\n    \"company_id\",\n    \"job_location\",\n    \"job_summary\",\n    \"job_seniority_level\",\n    \"job_function\",\n    \"job_employment_type\",\n    \"job_industries\",\n    \"job_base_pay_range\",\n    \"company_url\",\n    \"job_posted_time\",\n    \"job_num_applicants\",\n    \"discovery_input\",\n    \"apply_link\",\n    \"country_code\",\n    \"title_id\",\n    \"company_logo\",\n    \"job_posted_date\",\n    \"job_poster\",\n    \"application_availability\",\n    \"job_description_formatted\",\n    \"base_salary\",\n    \"timestamp\",\n    \"error\",\n    \"error_code\",\n    \"warning\",\n    \"warning_code\"\n  ]\n}\n",
        "sendBody": true,
        "sendQuery": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "queryParameters": {
          "parameters": [
            {
              "name": "dataset_id",
              "value": "YOUR_DATASET_ID_HERE"
            },
            {
              "name": "include_errors",
              "value": "true"
            },
            {
              "name": "type",
              "value": "discover_new"
            },
            {
              "name": "discover_by",
              "value": "keyword"
            },
            {
              "name": "limit_per_input",
              "value": "2"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_BRIGHTDATA_API_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "66705bee-6424-4f6f-8c24-d9aa7a198399",
      "name": "检查快照状态",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        20,
        -460
      ],
      "parameters": {
        "url": "=https://api.brightdata.com/datasets/v3/progress/{{ $json.snapshot_id }}",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "format",
              "value": "json"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_BRIGHTDATA_API_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "b5f9e1c9-eace-4a68-a084-dc254b1b9c46",
      "name": "等待1分钟",
      "type": "n8n-nodes-base.wait",
      "position": [
        620,
        -100
      ],
      "webhookId": "7047efad-de41-4608-b95c-d3e0203ef620",
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "fff887f5-0388-4667-a5e9-7ef72ea36ac0",
      "name": "从快照ID抓取数据",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        900,
        -500
      ],
      "parameters": {
        "url": "=https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }}",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "format",
              "value": "json"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_BRIGHTDATA_API_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "57572d1d-3366-447d-8186-62a121824033",
      "name": "在表格中更新职位列表",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1380,
        -500
      ],
      "parameters": {
        "columns": {
          "value": {
            "Location": "={{ $json.job_location }}",
            "Job Title": "={{ $json.job_title }}",
            "Apply Link": "={{ $json.apply_link }}",
            "Job Detail": "={{ $json.job_summary }}",
            "Company URL": "={{ $json.company_url }}",
            "Company Name ": "={{ $json.company_name }}"
          },
          "schema": [
            {
              "id": "Company URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Company URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Job Title",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Job Title",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Company Name ",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Company Name ",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Location",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Location",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Job Detail",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Job Detail",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Apply Link",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Apply Link",
              "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/YOUR_GOOGLE_SHEET_ID_HERE/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_GOOGLE_SHEET_ID_HERE",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID_HERE/edit?usp=drivesdk",
          "cachedResultName": "LinkedIn"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "YOUR_GOOGLE_SHEETS_CREDENTIAL_ID",
          "name": "Google Sheets Credential"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "3afbef52-97fe-4ead-8d57-d8e98e684b47",
      "name": "筛选器",
      "type": "n8n-nodes-base.filter",
      "position": [
        1140,
        -500
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "eb682420-fc89-4e01-a491-5a4a3f6bf10f",
              "operator": {
                "type": "string",
                "operation": "contains"
              },
              "leftValue": "={{ $json.job_summary }}",
              "rightValue": "={{ $json.shortCommonName }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "1badd4f4-4f66-4777-a2b7-3343f2afb2b3",
      "name": "如果",
      "type": "n8n-nodes-base.if",
      "position": [
        620,
        -480
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "f01bd215-c406-493c-a6e4-2b8ec5686b44",
              "operator": {
                "type": "number",
                "operation": "notEquals"
              },
              "leftValue": "={{ $json.records }}",
              "rightValue": "={{ 0 }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "df16ac92-0f96-40cd-ad9c-da17332a3e81",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -760,
        -620
      ],
      "parameters": {
        "color": 2,
        "width": 300,
        "height": 340,
        "content": "🔹 按关键词搜索 — 表单触发器"
      },
      "typeVersion": 1
    },
    {
      "id": "454c5db0-beb7-4a0b-95ca-8308a114e420",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -440,
        -660
      ],
      "parameters": {
        "color": 3,
        "width": 320,
        "height": 380,
        "content": "🔹 LinkedIn职位搜索获取器 — HTTP请求(POST到Bright Data)"
      },
      "typeVersion": 1
    },
    {
      "id": "c68c4da8-6965-45cb-833f-0bb3a99a289c",
      "name": "便签2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -100,
        -640
      ],
      "parameters": {
        "color": 4,
        "width": 300,
        "height": 360,
        "content": "🔹 检查快照ID的交付状态 — HTTP请求(GET)"
      },
      "typeVersion": 1
    },
    {
      "id": "57d2b098-41ce-4ee6-ab1d-130e2645dc3e",
      "name": "便签3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -220
      ],
      "parameters": {
        "color": 7,
        "width": 380,
        "height": 280,
        "content": "🔹 等待1分钟 — 等待节点"
      },
      "typeVersion": 1
    },
    {
      "id": "47fc7436-1f6b-4bec-b88c-4df12ceddf57",
      "name": "便签4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        220,
        -640
      ],
      "parameters": {
        "color": 5,
        "width": 270,
        "height": 360,
        "content": "🔹 检查最终状态 — IF节点 #1"
      },
      "typeVersion": 1
    },
    {
      "id": "7a978cd2-efad-474d-92b7-3f9f28155f00",
      "name": "便签5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        -680
      ],
      "parameters": {
        "color": 6,
        "width": 260,
        "height": 400,
        "content": "🔹 从响应解码快照 — HTTP请求(GET)"
      },
      "typeVersion": 1
    },
    {
      "id": "6ff9b0c5-b18c-44e9-b671-86388428927b",
      "name": "### 需要帮助?",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1300,
        -660
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 400,
        "content": "🔹 Google表格 — Google表格(追加或更新)"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "57896d29-3f06-44b6-bb08-964875ffc7fb",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Scrape Data from SnapID",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter": {
      "main": [
        [
          {
            "node": "Update Job Lists in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait 1 minute": {
      "main": [
        [
          {
            "node": "Check Snapshot Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Final Status": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait 1 minute",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Snapshot ID": {
      "main": [
        [
          {
            "node": "Check Snapshot Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On form submission1": {
      "main": [
        [
          {
            "node": "Create Snapshot ID",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Snapshot Status": {
      "main": [
        [
          {
            "node": "Check Final Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Scrape Data from SnapID": {
      "main": [
        [
          {
            "node": "Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

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

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

高级 - 其他, 人工智能

需要付费吗?

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

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

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

外部链接
在 n8n.io 查看

分享此工作流