LinkedIn上の求人情報をDecodoとGPT-4o-miniでクロール&分析
上級
これはHR, AI RAG分野の自動化ワークフローで、19個のノードを含みます。主にSet, Code, Merge, Function, GoogleSheetsなどのノードを使用。 LinkedIn、Decodo、GPT-4o-miniを使って人材のインサイトとデータドリブシングを抽出・分析
前提条件
- •Google Sheets API認証情報
- •OpenAI API Key
使用ノード (19)
カテゴリー
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "FsM5tVDtDHt1mXCp",
"meta": {
"instanceId": "885b4fb4a6a9c2cb5621429a7b972df0d05bb724c20ac7dac7171b62f1c7ef40",
"templateCredsSetupCompleted": true
},
"name": "LinkedIn Talent Intelligence and Data Mining using Decodo with GPT-4o-mini",
"tags": [
{
"id": "ddPkw7Hg5dZhQu2w",
"name": "AI",
"createdAt": "2025-04-13T05:38:08.053Z",
"updatedAt": "2025-04-13T05:38:08.053Z"
},
{
"id": "ZOwtAMLepQaGW76t",
"name": "Building Blocks",
"createdAt": "2025-04-13T15:23:40.462Z",
"updatedAt": "2025-04-13T15:23:40.462Z"
},
{
"id": "Kujft2FOjmOVQAmJ",
"name": "Engineering",
"createdAt": "2025-04-09T01:31:00.558Z",
"updatedAt": "2025-04-09T01:31:00.558Z"
},
{
"id": "rKOa98eAi3IETrLu",
"name": "HR",
"createdAt": "2025-04-13T04:59:30.580Z",
"updatedAt": "2025-04-13T04:59:30.580Z"
}
],
"nodes": [
{
"id": "ebfaa6a4-3400-4867-bea6-4d88beee5661",
"name": "ワークフロー実行時",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-144,
128
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ca339fd3-e09e-4a2b-a370-b903853769db",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-144,
320
],
"parameters": {
"width": 496,
"height": 688,
"content": "## Purpose\n\nAdvanced talent intelligence platform that performs data mining on LinkedIn profiles to generate comprehensive recruitment insights and predictive job matching analytics.\n\n### Flow Summary:\n\n- Input: LinkedIn profile URL and Job Description.\n\n- Decodo: Performs comprehensive web scraping of LinkedIn profile data\n\n- OpenAI GPT-4o-mini: Extracts structured profile data with advanced parsing\n\n- Advanced Data Mining Engine: Performs deep analytics including skills analysis, experience intelligence, cultural fit assessment, career trajectory insights, and competitive advantage identification\n\n- Advanced Summarization Engine: Performs the comprehensive and abstraction summarization of the LinkedIn profile content\n\n- Output: Comprehensive JSON with structured profile data and advanced recruitment intelligence ready for ATS, CRM systems, or talent analytics platforms.\n\n### Use Case:\nIdeal for data-driven recruiters, talent acquisition teams, HR analytics professionals, and recruitment technology platforms requiring sophisticated candidate analysis and predictive matching capabilities"
},
"typeVersion": 1
},
{
"id": "75947f51-f304-478b-b7f3-1a5c824cd7a0",
"name": "Decodo",
"type": "@decodo/n8n-nodes-decodo.decodo",
"position": [
352,
128
],
"parameters": {
"geo": "={{ $json.geo }}",
"url": "={{ $json.url }}"
},
"credentials": {
"decodoApi": {
"id": "7xLvINFuwxDiyBde",
"name": "Decodo Credentials account"
}
},
"retryOnFail": true,
"typeVersion": 1
},
{
"id": "0342ac07-77f0-4ae5-a98a-1ded33654cd0",
"name": "入力フィールド設定",
"type": "n8n-nodes-base.set",
"position": [
112,
128
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "01a2dade-6674-4158-8303-97a1151d3965",
"name": "url",
"type": "string",
"value": "https://www.linkedin.com/in/ranjan-dailata/"
},
{
"id": "82a8ccde-dc3c-4ed1-b81e-bbcf44a2cf11",
"name": "geo",
"type": "string",
"value": "India"
},
{
"id": "b8104d33-8d7a-415c-935b-1e8432b8a756",
"name": "jobDescription",
"type": "string",
"value": "Senior Software Engineer with 5+ years of experience in React, Node.js, and cloud technologies. Must have experience with AWS, Docker, and agile development methodologies. Looking for someone who can lead technical projects and mentor junior developers."
}
]
}
},
"typeVersion": 3.4
},
{
"id": "46ef866f-63fc-4a8e-9dae-16a5efb851e4",
"name": "構造化データ抽出ツール",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
720,
-208
],
"parameters": {
"text": "=Parse and build content using {{ $json.data.results[0].content }} in JSON Resume Schema.\n\nDo not output your own response or thoughts or suggestions. \n\nNeed to output a proper fully formatted JSON response.",
"batching": {},
"messages": {
"messageValues": [
{
"message": "You are an expert resume parser"
}
]
},
"promptType": "define"
},
"retryOnFail": true,
"typeVersion": 1.7,
"alwaysOutputData": true
},
{
"id": "9bcbd10e-5ca1-4c28-be64-9aa847d81f57",
"name": "高度なデータマイニングとプロファイル・ジョブ分析",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
720,
176
],
"parameters": {
"text": "=Perform advanced data mining analysis on the candidate profile and job description.\n\nCandidate Profile:\n{{ $json.data.results[0].content }}\n\nJob Description:\n{{ $('Set the Input Fields').item.json.jobDescription }}\n\nConduct comprehensive data mining including:\n\n1. SKILLS ANALYSIS:\n- Technical skills extraction and categorization\n- Skill level assessment (Beginner/Intermediate/Advanced/Expert)\n- Skills gap analysis against job requirements\n- Transferable skills identification\n\n2. EXPERIENCE INTELLIGENCE:\n- Career progression pattern analysis\n- Industry experience depth assessment\n- Leadership and management experience evaluation\n- Project complexity and scale analysis\n\n3. CULTURAL & CONTEXTUAL FIT:\n- Company culture alignment indicators\n- Work style preferences inference\n- Communication style analysis\n- Learning agility indicators\n\n4. CAREER TRAJECTORY INSIGHTS:\n- Career growth velocity\n- Job stability patterns\n- Promotion frequency analysis\n- Industry transition analysis\n\n5. COMPETITIVE ADVANTAGES:\n- Unique selling points identification\n- Market positioning analysis\n- Salary expectation indicators\n- Availability timeline assessment\n\nOutput comprehensive JSON with data-driven insights for recruitment decisions.\n\nDo not output your own response or thoughts or suggestions. \n\nNeed to output a proper fully formatted JSON response.",
"batching": {},
"messages": {
"messageValues": [
{
"message": "You are a senior data scientist and HR analytics expert specializing in talent intelligence and predictive recruitment analytics."
}
]
},
"promptType": "define"
},
"retryOnFail": true,
"typeVersion": 1.7,
"alwaysOutputData": true
},
{
"id": "e73a1e3d-1bf8-4fa6-897d-30a7210ea044",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-144,
-144
],
"parameters": {
"color": 7,
"width": 384,
"height": 208,
"content": "\n\nOpenAI GPT-4o-mini for the Structured Data Extraction and Data Mining Purposes"
},
"typeVersion": 1
},
{
"id": "216e80b9-2856-4eea-b19f-48330ad815c9",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
528,
-288
],
"parameters": {
"color": 4,
"width": 608,
"height": 1104,
"content": "## Data Miner"
},
"typeVersion": 1
},
{
"id": "9276bfc2-eca8-45cc-8ae6-3882a0862e5e",
"name": "マージ",
"type": "n8n-nodes-base.merge",
"position": [
1376,
160
],
"parameters": {
"numberInputs": 3
},
"typeVersion": 3.2
},
{
"id": "460a778d-cb17-4265-821a-a36b0c387772",
"name": "シートに行を追加または更新",
"type": "n8n-nodes-base.googleSheets",
"position": [
1600,
176
],
"parameters": {
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oNScKT5lCIFJTXZ006vAu5IJEC_nWHTOil56tvB3JYU/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1oNScKT5lCIFJTXZ006vAu5IJEC_nWHTOil56tvB3JYU",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oNScKT5lCIFJTXZ006vAu5IJEC_nWHTOil56tvB3JYU/edit?usp=drivesdk",
"cachedResultName": "LinkedIn Talent Intelligence"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "Zjoxh2BUZ6VXGQhA",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "6b579358-223c-4eff-a7dd-f7b521358f7f",
"name": "OpenAI チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
784,
336
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "vPKynKbDzJ5ZU4cU",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "05fad9fa-8048-403e-9b3a-0e423325d4c1",
"name": "OpenAI 構造化データ抽出用チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
736,
-48
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "vPKynKbDzJ5ZU4cU",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "4b71fb93-4540-476a-8346-bd0f1e6462f6",
"name": "要約ツール",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
736,
480
],
"parameters": {
"text": "=Perform abstractive and comprehensive summarize of the following {{ $json.data.results[0].content }} in JSON Resume Schema",
"batching": {},
"messages": {
"messageValues": [
{
"message": "You are an expert resume summarizer"
}
]
},
"promptType": "define",
"hasOutputParser": true
},
"retryOnFail": true,
"typeVersion": 1.7,
"alwaysOutputData": true
},
{
"id": "392c533e-3235-4953-9bf9-5235a8bc5922",
"name": "OpenAI 要約ツール用チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
704,
656
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "vPKynKbDzJ5ZU4cU",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "2e8fcea6-7f49-42da-8306-c4b8dab49b25",
"name": "構造化出力パーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
912,
656
],
"parameters": {
"schemaType": "manual",
"inputSchema": "{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"abstractive_summarizer\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n \"comprehensive_summarizer\": {\n\t\t\t\"type\": \"string\"\n\t\t}\n\t}\n}"
},
"typeVersion": 1.3
},
{
"id": "b978cfed-6490-4d2b-9910-b1ae1f5f352d",
"name": "ディスクからのファイル読み書き",
"type": "n8n-nodes-base.readWriteFile",
"position": [
1584,
-176
],
"parameters": {
"options": {},
"fileName": "=C:\\\\{{ $('Extract Structured JSON').item.json.basics.name }}.json",
"operation": "write",
"dataPropertyName": "=data"
},
"typeVersion": 1
},
{
"id": "489bbb08-e7e3-4f52-8ed3-6be3b3dde98e",
"name": "Make バイナリ",
"type": "n8n-nodes-base.function",
"position": [
1376,
-176
],
"parameters": {
"functionCode": "items[0].binary = {\n data: {\n data: new Buffer(JSON.stringify(items[0].json, null, 2)).toString('base64')\n }\n};\nreturn items;"
},
"typeVersion": 1
},
{
"id": "e8e2248f-a2fe-41b9-822d-029a6b882ccf",
"name": "構造化JSON抽出",
"type": "n8n-nodes-base.code",
"position": [
1184,
-32
],
"parameters": {
"jsCode": "let text = $input.first().json.text;\nconst output = [];\n\n// Remove ```json ... ``` or ``` ... ``` wrappers\ntext = text\n .replace(/```json\\s*/gi, '')\n .replace(/```/g, '')\n .trim();\n\n// Parse the cleaned JSON text\nconst parsed = JSON.parse(text);\noutput.push({ json: parsed });\n\nreturn output;"
},
"typeVersion": 2
},
{
"id": "7e42f48d-a3a0-45d7-a3d9-87294702b618",
"name": "フォーマット済みJSON抽出",
"type": "n8n-nodes-base.code",
"position": [
1152,
176
],
"parameters": {
"jsCode": "let text = $input.first().json.text;\nconst output = [];\n\n// Remove ```json ... ``` or ``` ... ``` wrappers\ntext = text\n .replace(/```json\\s*/gi, '')\n .replace(/```/g, '')\n .trim();\n\n// Parse the cleaned JSON text\nconst parsed = JSON.parse(text);\noutput.push({ json: parsed });\n\nreturn output;"
},
"typeVersion": 2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "2b574170-fea3-4899-a26f-5a8e95632934",
"connections": {
"9276bfc2-eca8-45cc-8ae6-3882a0862e5e": {
"main": [
[
{
"node": "460a778d-cb17-4265-821a-a36b0c387772",
"type": "main",
"index": 0
}
]
]
},
"75947f51-f304-478b-b7f3-1a5c824cd7a0": {
"main": [
[
{
"node": "46ef866f-63fc-4a8e-9dae-16a5efb851e4",
"type": "main",
"index": 0
},
{
"node": "9bcbd10e-5ca1-4c28-be64-9aa847d81f57",
"type": "main",
"index": 0
},
{
"node": "4b71fb93-4540-476a-8346-bd0f1e6462f6",
"type": "main",
"index": 0
}
]
]
},
"4b71fb93-4540-476a-8346-bd0f1e6462f6": {
"main": [
[
{
"node": "9276bfc2-eca8-45cc-8ae6-3882a0862e5e",
"type": "main",
"index": 2
}
]
]
},
"489bbb08-e7e3-4f52-8ed3-6be3b3dde98e": {
"main": [
[
{
"node": "b978cfed-6490-4d2b-9910-b1ae1f5f352d",
"type": "main",
"index": 0
}
]
]
},
"6b579358-223c-4eff-a7dd-f7b521358f7f": {
"ai_languageModel": [
[
{
"node": "9bcbd10e-5ca1-4c28-be64-9aa847d81f57",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"0342ac07-77f0-4ae5-a98a-1ded33654cd0": {
"main": [
[
{
"node": "75947f51-f304-478b-b7f3-1a5c824cd7a0",
"type": "main",
"index": 0
}
]
]
},
"7e42f48d-a3a0-45d7-a3d9-87294702b618": {
"main": [
[
{
"node": "9276bfc2-eca8-45cc-8ae6-3882a0862e5e",
"type": "main",
"index": 1
}
]
]
},
"e8e2248f-a2fe-41b9-822d-029a6b882ccf": {
"main": [
[
{
"node": "9276bfc2-eca8-45cc-8ae6-3882a0862e5e",
"type": "main",
"index": 0
},
{
"node": "489bbb08-e7e3-4f52-8ed3-6be3b3dde98e",
"type": "main",
"index": 0
}
]
]
},
"2e8fcea6-7f49-42da-8306-c4b8dab49b25": {
"ai_outputParser": [
[
{
"node": "4b71fb93-4540-476a-8346-bd0f1e6462f6",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"46ef866f-63fc-4a8e-9dae-16a5efb851e4": {
"main": [
[
{
"node": "e8e2248f-a2fe-41b9-822d-029a6b882ccf",
"type": "main",
"index": 0
}
]
]
},
"460a778d-cb17-4265-821a-a36b0c387772": {
"main": [
[]
]
},
"392c533e-3235-4953-9bf9-5235a8bc5922": {
"ai_languageModel": [
[
{
"node": "4b71fb93-4540-476a-8346-bd0f1e6462f6",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"ebfaa6a4-3400-4867-bea6-4d88beee5661": {
"main": [
[
{
"node": "0342ac07-77f0-4ae5-a98a-1ded33654cd0",
"type": "main",
"index": 0
}
]
]
},
"9bcbd10e-5ca1-4c28-be64-9aa847d81f57": {
"main": [
[
{
"node": "7e42f48d-a3a0-45d7-a3d9-87294702b618",
"type": "main",
"index": 0
}
]
]
},
"05fad9fa-8048-403e-9b3a-0e423325d4c1": {
"ai_languageModel": [
[
{
"node": "46ef866f-63fc-4a8e-9dae-16a5efb851e4",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級 - 人事, AI RAG検索拡張
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Bright Data と OpenAI 4o mini を使用した自動履歴書求人情報マッチングエンジン
Bright Data MCP と OpenAI 4o mini を使った自動履歴書職業マッチングエンジン
Set
Function
Split Out
+
Set
Function
Split Out
22 ノードRanjan Dailata
人事
Bright DataとOpenAIを使用したCrunchbase B2Bリード発見パイプライン
Bright Data、GPT-4o、Google Sheetsを使ってCrunchbaseからB2Bリードを抽出・要約する
Set
Function
Http Request
+
Set
Function
Http Request
21 ノードRanjan Dailata
営業
Bright DataとGoogle Geminiを使用したGoogle Mapsビジネス情報スクレイピングとリードリッチ化
Bright DataとGoogle Geminiを利用したGoogle Maps企業情報スクレイピングとリードリッチ化ツール
Set
Code
Wait
+
Set
Code
Wait
29 ノードRanjan Dailata
リード獲得
LinkedInプロフィール抽出とJSON履歴書の構築(Bright DataとGoogle Gemini)
LinkedInプロフィール抽出とJSON履歴書構築(Bright DataとGoogle Gemini)
Set
Code
Function
+
Set
Code
Function
19 ノードRanjan Dailata
人事
Decodo+Google Geminiを活用したLinkedIn人材分析とサマリーの自動化
Decodo、Gemini、 Google Sheets を使って LinkedIn タレントプロファイルとサマリー自動化
Set
Code
Merge
+
Set
Code
Merge
13 ノードRanjan Dailata
競合インテリジェンスエージェント:SERP 監視+Thordata+OpenAI 要約インサイト
ライバル戦闘Intelligenceエージェント:SERP監視+Thordata+OpenAI要約洞察
Set
Merge
Google Sheets
+
Set
Merge
Google Sheets
23 ノードRanjan Dailata
市場調査
ワークフロー情報
難易度
上級
ノード数19
カテゴリー2
ノードタイプ12
作成者
Ranjan Dailata
@ranjancseA Professional based out of India specialized in handling AI-powered automations. Contact me at ranjancse@gmail.com
外部リンク
n8n.ioで表示 →
このワークフローを共有