列表构建器
中级
这是一个Sales, Finance, Product, AI, Marketing领域的自动化工作流,包含 7 个节点。主要使用 Set, Code, Airtop, GoogleSheets, ManualTrigger 等节点,结合人工智能技术实现智能自动化。 使用Airtop和Google Sheets从任何平台构建个人资料列表
前置要求
- •Google Sheets API 凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "VwU1zMhcgzgPS9ak",
"meta": {
"instanceId": "660cf2c29eb19fa42319afac3bd2a4a74c6354b7c006403f6cba388968b63f5d",
"templateCredsSetupCompleted": true
},
"name": "列表构建器",
"tags": [
{
"id": "a8B9vqj0vNLXcKVQ",
"name": "template",
"createdAt": "2025-04-04T15:38:37.785Z",
"updatedAt": "2025-04-04T15:38:37.785Z"
}
],
"nodes": [
{
"id": "1a6aa574-467d-40b0-a9a5-a5537bede3de",
"name": "当点击\"测试工作流\"时",
"type": "n8n-nodes-base.manualTrigger",
"position": [
0,
0
],
"parameters": {},
"typeVersion": 1
},
{
"id": "62db9366-7e6f-4346-9de8-9fa730d059ed",
"name": "格式化结果",
"type": "n8n-nodes-base.code",
"position": [
660,
0
],
"parameters": {
"jsCode": "// Get first input item\nconst input = $input.first().json.data.modelResponse\n// Parse list of links\nconst listOfLinks = JSON.parse(input).results\n// Format node's output\nconst output = listOfLinks.map((item) => ({\n json: { url: item.url }\n}))\n\nreturn output;"
},
"typeVersion": 2
},
{
"id": "fa960de3-8dd6-40a3-aa59-634ad250f5d1",
"name": "获取URL",
"type": "n8n-nodes-base.airtop",
"position": [
440,
0
],
"parameters": {
"url": "=https://www.google.com/search?q={{ encodeURI($json.who+' on ' + $json.where) }}",
"prompt": "=Those are search results, return up to 10 non-sponsored results that lead to a web page with a list of {{$json.who}} on {{$json.where}}. For each return the title and URL.",
"resource": "extraction",
"operation": "query",
"sessionMode": "new",
"additionalFields": {
"outputSchema": "{ \"type\": \"object\", \"properties\": { \"results\": { \"type\": \"array\", \"items\": { \"type\": \"object\", \"properties\": { \"title\": { \"type\": \"string\", \"description\": \"The title of the search result.\" }, \"url\": { \"type\": \"string\", \"description\": \"The URL of the webpage.\" } }, \"required\": [ \"title\", \"url\" ], \"additionalProperties\": false }, \"description\": \"A list of up to 10 non-sponsored search results.\" } }, \"required\": [ \"results\" ], \"additionalProperties\": false, \"$schema\": \"http://json-schema.org/draft-07/schema#\"}"
}
},
"credentials": {
"airtopApi": {
"id": "byhouJF8RLH5DkmY",
"name": "Airtop"
}
},
"typeVersion": 1
},
{
"id": "d75dbdce-7a7e-4a30-81b0-6e8fa5221f55",
"name": "获取人员信息",
"type": "n8n-nodes-base.airtop",
"position": [
880,
0
],
"parameters": {
"url": "={{ $json.url }}",
"prompt": "=This is a list of {{ $('Parameters').item.json.who }} on {{ $('Parameters').item.json.where }}.\nExtract up to 20 items. For each person extract: \n- name \n- handle or ID \n- URL",
"resource": "extraction",
"operation": "query",
"sessionMode": "new",
"additionalFields": {
"outputSchema": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"description\": \"The name of the item.\"\n },\n \"identifier\": {\n \"type\": \"string\",\n \"description\": \"The unique identifier or handle for the item.\"\n },\n \"url\": {\n \"type\": \"string\",\n \"description\": \"The URL to access the item or its related resource.\"\n }\n },\n \"required\": [\n \"name\",\n \"identifier\",\n \"url\"\n ],\n \"additionalProperties\": false\n }\n }\n },\n \"required\": [\n \"items\"\n ],\n \"additionalProperties\": false\n}"
}
},
"credentials": {
"airtopApi": {
"id": "byhouJF8RLH5DkmY",
"name": "Airtop"
}
},
"typeVersion": 1
},
{
"id": "285ce6af-bda8-4025-872e-f5f8c4a56b3c",
"name": "结果去重",
"type": "n8n-nodes-base.code",
"position": [
1100,
0
],
"parameters": {
"jsCode": "const allResults = []\n\nfor (const inputItem of $input.all()) {\n // Parse input to JSON\n const input = inputItem.json.data.modelResponse\n const results = JSON.parse(input).items\n // clean results\n const cleanedResults = results\n .filter((res) => res.name) // only those with name\n .map((res) => ({\n ...res,\n url: res.url.split('?')[0] // clean url\n }))\n // add results to list\n allResults.push(...cleanedResults)\n}\n\n// Dedupe urls\nconst uniqueList = allResults.filter((item, index, self) =>\n index === self.findIndex((t) => (t.url === item.url))\n);\n\nreturn uniqueList.map((item) => ({\n json: {...item}\n}));"
},
"typeVersion": 2
},
{
"id": "fdc86d5c-4df3-48b9-9cf6-a5ddc3b45c90",
"name": "添加到电子表格",
"type": "n8n-nodes-base.googleSheets",
"position": [
1320,
0
],
"parameters": {
"columns": {
"value": {
"URL": "={{ $json.url }}",
"Name": "={{ $json.name }}",
"Who?": "={{ $('Parameters').first().json.who }}",
"Where?": "={{ $('Parameters').first().json.where }}",
"Added on": "={{ $now }}",
"ID or Handle": "={{ $json.identifier }}"
},
"schema": [
{
"id": "Who?",
"type": "string",
"display": true,
"required": false,
"displayName": "Who?",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Where?",
"type": "string",
"display": true,
"required": false,
"displayName": "Where?",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ID or Handle",
"type": "string",
"display": true,
"required": false,
"displayName": "ID or Handle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL",
"type": "string",
"display": true,
"required": false,
"displayName": "URL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Added on",
"type": "string",
"display": true,
"required": false,
"displayName": "Added on",
"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/150eh4t5GyEBN_TcO5TDeNWpE2GzHR4hQWoNRbUpw7A0/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "150eh4t5GyEBN_TcO5TDeNWpE2GzHR4hQWoNRbUpw7A0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/150eh4t5GyEBN_TcO5TDeNWpE2GzHR4hQWoNRbUpw7A0/edit?usp=drivesdk",
"cachedResultName": "List Builder"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "CwpCAR1HwgHZpRtJ",
"name": "Google Drive"
}
},
"typeVersion": 4.5
},
{
"id": "44c54497-741c-4c48-b4f9-0c5c836d10ad",
"name": "参数设置",
"type": "n8n-nodes-base.set",
"position": [
220,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "bc2d3cb9-b7d0-4c3f-b392-53262d60441e",
"name": "who",
"type": "string",
"value": "Top \"Build in Public\" influencers"
},
{
"id": "b2cfa361-c80a-4945-bc0e-23eac5edebd6",
"name": "where",
"type": "string",
"value": "X"
}
]
}
},
"typeVersion": 3.4
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "a2572aec-54cb-4bbb-b503-09d1d0beb64f",
"connections": {
"Get urls": {
"main": [
[
{
"node": "Format results",
"type": "main",
"index": 0
}
]
]
},
"Get people": {
"main": [
[
{
"node": "Dedupe results",
"type": "main",
"index": 0
}
]
]
},
"Parameters": {
"main": [
[
{
"node": "Get urls",
"type": "main",
"index": 0
}
]
]
},
"Dedupe results": {
"main": [
[
{
"node": "Add to spreadsheet",
"type": "main",
"index": 0
}
]
]
},
"Format results": {
"main": [
[
{
"node": "Get people",
"type": "main",
"index": 0
}
]
]
},
"When clicking ‘Test workflow’": {
"main": [
[
{
"node": "Parameters",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
中级 - 销售, 财务, 产品, 人工智能, 营销
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
LinkedIn 个人资料发现
使用 Airtop 和 Google 搜索自动发现 LinkedIn 个人资料
Code
Airtop
Google Sheets
+1
5 节点Cesar @ Airtop AI
销售
监控竞争对手定价
使用 Airtop 和 Slack 在竞争对手更改定价时获取通知
Code
Merge
Slack
+4
8 节点Cesar @ Airtop AI
产品
ICP公司评分
LinkedIn公司ICP评分自动化,集成Airtop和Google Sheets
Code
Airtop
Google Sheets
+1
5 节点Cesar @ Airtop AI
销售
LinkedIn个人ICP评分自动化(Airtop与Google Sheets)
LinkedIn个人ICP评分自动化(Airtop与Google Sheets)
Code
Airtop
Google Sheets
+1
5 节点Cesar @ Airtop AI
产品
使用 OpenAI、Google Sheets、Jina AI 和 Slack 的 AI 驱动信息监控
基于AI的信息监控,集成OpenAI、Google Sheets、Jina AI和Slack
If
Set
Code
+10
31 节点Dataki
销售
监控ProductHunt
使用Airtop和Slack自动化Product Hunt发现
If
Set
Slack
+2
5 节点Cesar @ Airtop AI
产品