[LI] - プロフィールを検索

中級

これはLead Generation分野の自動化ワークフローで、14個のノードを含みます。主にSet, Code, Form, Switch, SplitOutなどのノードを使用。 SerpAPI と Google テーブルを使用して LinkedIn プロフィールを検索し、収集する

前提条件
  • Google Sheets API認証情報

カテゴリー

ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "id": "oghc0ynE1x8iSAgb",
  "meta": {
    "instanceId": "2295c029f4cb86c8f849f9c87dade323734dc279619eb9e2704f8473c381e4d1"
  },
  "name": "[LI] - Search profiles",
  "tags": [],
  "nodes": [
    {
      "id": "55003493-01ab-4ea1-a22e-d2d97df0fa71",
      "name": "フォーム送信時",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -1536,
        48
      ],
      "webhookId": "9048da22-9150-4b78-9de3-e07ba9c25f57",
      "parameters": {
        "options": {},
        "formTitle": "LinkedIn Search",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Keywords (comma separated)",
              "requiredField": "={{ false }}"
            },
            {
              "fieldType": "number",
              "fieldLabel": "Pages to fetch",
              "requiredField": "={{ false }}"
            }
          ]
        },
        "responseMode": "lastNode"
      },
      "typeVersion": 2.3
    },
    {
      "id": "9a9b9b56-a179-41b6-a7ae-8723d92510de",
      "name": "キーワードのフォーマット",
      "type": "n8n-nodes-base.set",
      "position": [
        -1296,
        48
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "name": "keywords",
              "type": "string",
              "value": "={{ \n  (() => {\n    const keywords = $json[\"Keywords (comma separated)\"]\n      .split(',')\n      .map(k => k.trim())\n      .filter(Boolean);\n    return '(\"' + keywords.join('\") (\"') + '\")';\n  })()\n}}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "50b03fa5-2e7c-4e4a-a575-8ca09aa95e71",
      "name": "ページリストの構築",
      "type": "n8n-nodes-base.code",
      "position": [
        -1008,
        48
      ],
      "parameters": {
        "jsCode": "// Build one item per requested page with the proper SerpAPI start offsets\nconst pagesRequested = parseInt($('On form submission').item.json['Pages to fetch'] ?? 1, 10) || 1;\nconst perPage = 10;\nconst ctx = {\n  keywordsGrouped: $('Format Keywords').item.json.keywords,\n  rawKeywords: $('On form submission').item.json['Keywords (comma separated)'],\n  submittedAt: $('On form submission').item.json.submittedAt\n};\nreturn Array.from({ length: pagesRequested }, (_, i) => ({\n  json: {\n    page: i,\n    start: $('On form submission').first().json['Page (offset)'] * perPage,\n    ...ctx\n  }\n}));"
      },
      "typeVersion": 2
    },
    {
      "id": "bc93179f-578b-4fd1-9701-8fefb5f3f650",
      "name": "SerpAPI検索",
      "type": "n8n-nodes-serpapi.serpApi",
      "position": [
        -480,
        64
      ],
      "parameters": {
        "q": "=site:pl.linkedin.com/in/ {{$json.keywordsGrouped}}",
        "location": "Warsaw,Masovian Voivodeship,Poland",
        "requestOptions": {},
        "additionalFields": {
          "start": "={{$json.start}}"
        }
      },
      "credentials": {
        "serpApi": {
          "id": "Jl6rNySnLrJlaonK",
          "name": "SerpApi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e3a373df-29f4-408d-a286-9a2761c30b49",
      "name": "返された結果数の確認",
      "type": "n8n-nodes-base.switch",
      "position": [
        -256,
        64
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "Empty list",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "loose"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "number",
                      "operation": "equals"
                    },
                    "leftValue": "={{ parseInt($json.search_information.total_results) }}",
                    "rightValue": "=0"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Not empty list",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "loose"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "number",
                      "operation": "gt"
                    },
                    "leftValue": "={{ $json.search_information.total_results }}",
                    "rightValue": 0
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {},
        "looseTypeValidation": true
      },
      "typeVersion": 3.3
    },
    {
      "id": "aaa5aa78-d3c0-474b-8329-2a9f17012540",
      "name": "プロフィールが見つかりません",
      "type": "n8n-nodes-base.form",
      "position": [
        -80,
        -160
      ],
      "webhookId": "25b9af18-87bd-4e8f-b25c-2b7ee230b12a",
      "parameters": {
        "options": {},
        "operation": "completion",
        "completionTitle": "Response",
        "completionMessage": "No profiles found based on params."
      },
      "typeVersion": 2.3
    },
    {
      "id": "7529e706-afb5-4878-a388-2ff04fd67842",
      "name": "分割",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -80,
        288
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "organic_results"
      },
      "typeVersion": 1
    },
    {
      "id": "20e568aa-9be7-4d97-85f1-a01725300699",
      "name": "オブジェクトのプロパティにフルネームを取得",
      "type": "n8n-nodes-base.code",
      "position": [
        112,
        288
      ],
      "parameters": {
        "jsCode": "for (const item of $input.all()) {\n  if (typeof item.json.title === 'string') {\n    item.json.fullName = item.json.title.split('-')[0].trim();\n  }\n}\nreturn $input.all();"
      },
      "typeVersion": 2
    },
    {
      "id": "c7331bd5-8680-4651-97f4-6a09c0b40fe2",
      "name": "シートにプロフィールを追加",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        368,
        288
      ],
      "parameters": {
        "columns": {
          "value": {
            "Date": "={{ $('On form submission').item.json.submittedAt }}",
            "Profile": "={{ $json.link }}",
            "Keywords": "={{ $('On form submission').item.json['Keywords (comma separated)'] }}",
            "Full name": "={{ $json.fullName }}"
          },
          "schema": [
            {
              "id": "Date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Full name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Full name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Profile",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Profile",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Keywords",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Keywords",
              "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/1f_wxWdSr2hfmmRTWIHqpCKn6-63J0UUflFJnLj_M7ls/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1f_wxWdSr2hfmmRTWIHqpCKn6-63J0UUflFJnLj_M7ls",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1f_wxWdSr2hfmmRTWIHqpCKn6-63J0UUflFJnLj_M7ls/edit?usp=drivesdk",
          "cachedResultName": "[LI Profiles]"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "sgj6aGeryqEVmS3h",
          "name": "GSheets - Piotr.Sikora.Ck@gmail.com"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "119be8c8-5b9e-44a8-a845-2a2e34ed2baa",
      "name": "フォーム応答",
      "type": "n8n-nodes-base.form",
      "position": [
        -480,
        -384
      ],
      "webhookId": "25b9af18-87bd-4e8f-b25c-2b7ee230b12a",
      "parameters": {
        "options": {},
        "operation": "completion",
        "completionTitle": "Response",
        "completionMessage": "Check linked file"
      },
      "typeVersion": 2.3
    },
    {
      "id": "87fe340d-f481-4158-954a-136150adbdad",
      "name": "アイテムをループ処理",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -768,
        48
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "0b168e74-c995-4bd0-9b24-9bdf997c1570",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1392,
        -224
      ],
      "parameters": {
        "width": 288,
        "height": 432,
        "content": "## Change form data to query \n```\nelemnt1, element2\n```\nchanged to \n```\n(\"elemnt1\") (\"element2\")\n```"
      },
      "typeVersion": 1
    },
    {
      "id": "367edf17-e444-426b-aeb6-f6385fbbdff4",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -560,
        -64
      ],
      "parameters": {
        "color": 5,
        "height": 304,
        "content": "## Google query\nSerpAPI used to make a query"
      },
      "typeVersion": 1
    },
    {
      "id": "6915509d-bba4-4ce3-83c5-65faa6599fbc",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        288,
        -16
      ],
      "parameters": {
        "color": 4,
        "height": 464,
        "content": "## Save profiles in Google Sheet\n\nSetup Google Sheet with the following columns:\n- Date\n- Profile\n- Keywords\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {
    "On form submission": [
      {
        "json": {
          "formMode": "test",
          "submittedAt": "2025-10-20T12:17:44.944+02:00",
          "Page (offset)": 4,
          "Pages to fetch": 2,
          "Keywords (comma separated)": "automotive, plant manager, kierownik, kielce"
        }
      }
    ]
  },
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "50438f28-0644-4777-b599-a257510b1f55",
  "connections": {
    "7529e706-afb5-4878-a388-2ff04fd67842": {
      "main": [
        [
          {
            "node": "20e568aa-9be7-4d97-85f1-a01725300699",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bc93179f-578b-4fd1-9701-8fefb5f3f650": {
      "main": [
        [
          {
            "node": "e3a373df-29f4-408d-a286-9a2761c30b49",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "50b03fa5-2e7c-4e4a-a575-8ca09aa95e71": {
      "main": [
        [
          {
            "node": "87fe340d-f481-4158-954a-136150adbdad",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9a9b9b56-a179-41b6-a7ae-8723d92510de": {
      "main": [
        [
          {
            "node": "50b03fa5-2e7c-4e4a-a575-8ca09aa95e71",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "87fe340d-f481-4158-954a-136150adbdad": {
      "main": [
        [
          {
            "node": "119be8c8-5b9e-44a8-a845-2a2e34ed2baa",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "bc93179f-578b-4fd1-9701-8fefb5f3f650",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "55003493-01ab-4ea1-a22e-d2d97df0fa71": {
      "main": [
        [
          {
            "node": "9a9b9b56-a179-41b6-a7ae-8723d92510de",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c7331bd5-8680-4651-97f4-6a09c0b40fe2": {
      "main": [
        [
          {
            "node": "87fe340d-f481-4158-954a-136150adbdad",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e3a373df-29f4-408d-a286-9a2761c30b49": {
      "main": [
        [
          {
            "node": "aaa5aa78-d3c0-474b-8329-2a9f17012540",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "7529e706-afb5-4878-a388-2ff04fd67842",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "20e568aa-9be7-4d97-85f1-a01725300699": {
      "main": [
        [
          {
            "node": "c7331bd5-8680-4651-97f4-6a09c0b40fe2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

中級 - リード獲得

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

ワークフロー情報
難易度
中級
ノード数14
カテゴリー1
ノードタイプ10
難易度説明

経験者向け、6-15ノードの中程度の複雑さのワークフロー

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34