Automatisation LinkedIn avec n8n : recherche de profils via formulaire
Ce workflow n8n permet d'automatiser la recherche de profils LinkedIn en utilisant un formulaire. Lorsqu'un utilisateur remplit le formulaire, le workflow déclenche une série d'actions pour extraire des informations pertinentes à partir de Google et de LinkedIn. Cela est particulièrement utile pour les recruteurs ou les professionnels du marketing qui cherchent à identifier des candidats ou des contacts potentiels. En utilisant des outils comme Bright Data et GPT-4o-mini, ce processus devient rapide et efficace, éliminant le besoin de recherches manuelles fastidieuses.
- Étape 1 : Le workflow commence par un déclencheur de formulaire qui active le processus lorsque l'utilisateur soumet ses informations.
- Étape 2 : Les données du formulaire sont ensuite utilisées pour effectuer une recherche sur LinkedIn via Bright Data, permettant d'extraire les résultats pertinents.
- Étape 3 : Les résultats sont analysés et filtrés pour ne conserver qu'un profil correspondant.
- Étape 4 : Si un profil est trouvé, le workflow génère un suivi personnalisé pour la personne et l'entreprise concernée. Enfin, un email est envoyé pour notifier l'utilisateur des résultats de la recherche. Les bénéfices de cette automatisation n8n incluent une réduction significative du temps de recherche et une augmentation de la précision des résultats. Les utilisateurs peuvent ainsi se concentrer sur des tâches à plus forte valeur ajoutée, tout en s'assurant de ne manquer aucune opportunité de contact.
Workflow n8n LinkedIn, recherche de profils, Bright Data : vue d'ensemble
Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.
Workflow n8n LinkedIn, recherche de profils, Bright Data : détail des nœuds
Inscris-toi pour voir l'intégralité du workflow
Inscription gratuite
S'inscrire gratuitementBesoin d'aide ?{
"id": "nmVATBvrztDxZX6z",
"meta": {
"instanceId": "b1f85eae352fde76d801a1a612661df6824cc2e68bfd6741e31305160a737e6e",
"templateCredsSetupCompleted": true
},
"name": "LinkedIn Profile Finder via Form using Bright Data & GPT-4o-mini",
"tags": [],
"nodes": [
{
"id": "ff6d4985-8b42-46d8-95c8-e80ff102440c",
"name": "Extract Body and Title from Website",
"type": "n8n-nodes-base.html",
"position": [
1600,
-1120
],
"parameters": {
"options": {
"trimValues": true
},
"operation": "extractHtmlContent",
"dataPropertyName": "body",
"extractionValues": {
"values": [
{
"key": "title",
"cssSelector": "title"
},
{
"key": "body",
"cssSelector": "body"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "4da21d9c-59d2-4151-a1ca-5e7a85cf0316",
"name": "When User Completes Form",
"type": "n8n-nodes-base.formTrigger",
"position": [
580,
-1120
],
"webhookId": "41d0bffa-f5ca-4df7-b757-ca5a1e472b8a",
"parameters": {
"options": {
"path": "search-user",
"ignoreBots": true,
"buttonLabel": "Get References"
},
"formTitle": "Sales prospecting",
"formFields": {
"values": [
{
"fieldLabel": "Person Fullname",
"placeholder": "Complete the fullname",
"requiredField": true
},
{
"fieldLabel": "Person's company",
"placeholder": "Complete the company",
"requiredField": true
}
]
},
"responseMode": "lastNode",
"formDescription": "Complete the data of the prospect you want to analyze.\n\nA personalized follow-up email with insights and suggested outreach steps will be sent to you:"
},
"typeVersion": 2.2
},
{
"id": "644fab8f-66c6-4ae5-984b-7e1e66c265a2",
"name": "Get LinkedIn Entry on Google",
"type": "n8n-nodes-brightdata.brightData",
"position": [
1280,
-1120
],
"parameters": {
"url": "={{ $json.google_search }}",
"zone": {
"__rl": true,
"mode": "list",
"value": "web_unlocker1",
"cachedResultName": "web_unlocker1"
},
"format": "json",
"country": {
"__rl": true,
"mode": "list",
"value": "us",
"cachedResultName": "us"
},
"requestOptions": {}
},
"credentials": {
"brightdataApi": {
"id": "jk945kIuAFAo9bcg",
"name": "BrightData account"
}
},
"typeVersion": 1
},
{
"id": "e226ea33-a643-4396-9cbf-53901eeef89f",
"name": "Parse Google Results",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1920,
-1120
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "GPT-4O-MINI"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "=Extract Linkedin profiles from google results (link, fullname, position, company if possible). \n\nReturn a results property with all the parsed results including a property \"match\" if user matches the data entry values \"{{ $('When User Completes Form').item.json[\"Person Fullname\"].trim() }} {{ $('When User Completes Form').item.json[\"Person Position\"].trim() }} {{ $('When User Completes Form').item.json[\"Person's company\"].trim() }}\""
},
{
"content": "=The input text is:\n{{ $json.body }}"
},
{
"content": "=Categories to filter: {{ $('When User Completes Form').item.json.Category.join(',') }}"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "oKzfvOwieOm4upQ2",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "8018f6c1-037b-4577-ae4c-d2129fe2ecf4",
"name": "Form Not Found",
"type": "n8n-nodes-base.form",
"position": [
2280,
-800
],
"webhookId": "a509f577-231f-435f-b3c2-0fed718f0cc8",
"parameters": {
"operation": "completion",
"respondWith": "showText",
"responseText": "=We didn't found a person for \"{{ $('When User Completes Form').item.json[\"Person Fullname\"] }} {{ $('When User Completes Form').item.json[\"Person Fullname\"] }} {{ $('When User Completes Form').item.json[\"Person's company\"] }}\""
},
"typeVersion": 1
},
{
"id": "3de33b35-63b5-419d-9719-b217c92767c6",
"name": "Get only Matching Profiles",
"type": "n8n-nodes-base.filter",
"position": [
1460,
-820
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "51a15ff2-457c-4a96-bfad-fe6d29a8cd9f",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.match }}",
"rightValue": "true"
}
]
},
"looseTypeValidation": true
},
"typeVersion": 2.2
},
{
"id": "b7e925b1-3b67-4b17-bcc1-10111ed41c32",
"name": "Limit to 1 Profile",
"type": "n8n-nodes-base.limit",
"position": [
1740,
-820
],
"parameters": {},
"typeVersion": 1
},
{
"id": "d4a6a867-6e9b-48d3-9ba2-0d9d2e803e67",
"name": "Extract Parsed Results",
"type": "n8n-nodes-base.splitOut",
"position": [
2340,
-1120
],
"parameters": {
"options": {},
"fieldToSplitOut": "message.content.results"
},
"typeVersion": 1
},
{
"id": "daf17e0e-0fc9-45e4-9393-8ba3a60f868e",
"name": "LinkedIn Profile is Found?",
"type": "n8n-nodes-base.if",
"position": [
1960,
-820
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "645d85d3-c5cc-4e51-a989-075c0a851449",
"operator": {
"type": "object",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json }}",
"rightValue": 1
}
]
}
},
"typeVersion": 2.2
},
{
"id": "300da9f8-6c24-4081-af96-ae09a1b513f8",
"name": "Edit Url LinkedIn",
"type": "n8n-nodes-base.set",
"position": [
940,
-1120
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "6b95685b-3286-4643-bfa1-6335d3f8cb39",
"name": "google_search",
"type": "string",
"value": "=https://www.google.com/search?q=site%3Alinkedin.com%2Fin+{{ encodeURIComponent($json[\"Person Fullname\"].trim() + \" \" + $json[\"Person's company\"].trim()) }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "3ffaef02-ee98-4663-9a64-37907943427d",
"name": "Edit Company Search",
"type": "n8n-nodes-base.set",
"position": [
300,
-860
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "6b95685b-3286-4643-bfa1-6335d3f8cb39",
"name": "google_search",
"type": "string",
"value": "=https://www.google.com/search?q={{ encodeURIComponent($json[\"Person's company\"].trim()) }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "29294eaa-4692-4c1b-806a-11bd32428fdd",
"name": "Extract Body and Title from Website1",
"type": "n8n-nodes-base.html",
"position": [
860,
-860
],
"parameters": {
"options": {
"trimValues": true
},
"operation": "extractHtmlContent",
"dataPropertyName": "body",
"extractionValues": {
"values": [
{
"key": "title",
"cssSelector": "title"
},
{
"key": "body",
"cssSelector": "body"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "e5232b69-eefe-4875-b339-54f7d2787863",
"name": "Get Company on Google",
"type": "n8n-nodes-brightdata.brightData",
"position": [
540,
-860
],
"parameters": {
"url": "={{ $json.google_search }}",
"zone": {
"__rl": true,
"mode": "list",
"value": "web_unlocker1",
"cachedResultName": "web_unlocker1"
},
"format": "json",
"country": {
"__rl": true,
"mode": "list",
"value": "us",
"cachedResultName": "us"
},
"requestOptions": {}
},
"credentials": {
"brightdataApi": {
"id": "jk945kIuAFAo9bcg",
"name": "BrightData account"
}
},
"typeVersion": 1
},
{
"id": "a8696ab3-76f0-4b58-93d6-1b73f4c1d83a",
"name": "Parse Google Results for Company",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
720,
-420
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "GPT-4O-MINI"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "=Get first entry matching company {{ $('When User Completes Form').item.json[\"Person's company\"] }}\n\nOutput first entry data in a content property"
},
{
"content": "=The input text is:\n{{ $json.body }}"
},
{
"content": "=Categories to filter: {{ $('When User Completes Form').item.json.Category.join(',') }}"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "oKzfvOwieOm4upQ2",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "4b4a6ef2-92ae-4dee-aac1-081fb1a2dbd9",
"name": "Split Out",
"type": "n8n-nodes-base.splitOut",
"position": [
1080,
-420
],
"parameters": {
"options": {},
"fieldToSplitOut": "message.content"
},
"typeVersion": 1
},
{
"id": "cbf625d0-097d-47e7-8ab0-fb2da9dc3f7c",
"name": "Create a Followup for Company and Person",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1500,
-440
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "GPT-4O-MINI"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "=Use data to analyze as a buyer persona. Find the best approach to connect for future champion in his company. Give recommendations and a concrete outreach steps.\n\nOutput report as raw html in a propety called content. Use tailwind for styles."
},
{
"content": "=The input text is:\n{{ JSON.stringify($json)}}"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"id": "oKzfvOwieOm4upQ2",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "6347e20c-b3f0-42ff-bc31-ddf4d13a4398",
"name": "Merge",
"type": "n8n-nodes-base.merge",
"position": [
1320,
-440
],
"parameters": {
"mode": "combine",
"options": {},
"combineBy": "combineByPosition"
},
"typeVersion": 3.1
},
{
"id": "4df0fb38-dad4-4eda-876c-591111e98807",
"name": "Send Email",
"type": "n8n-nodes-base.emailSend",
"position": [
1880,
-440
],
"webhookId": "1e6e9588-2bc6-4f05-8531-2d7ca8348d0c",
"parameters": {
"html": "={{ $json.message.content.content }}",
"options": {},
"subject": "Next followup",
"toEmail": "miquel@n8nhackers.com",
"fromEmail": "miquel@n8nhackers.com"
},
"credentials": {
"smtp": {
"id": "z3kiLWNZTH4wQaGy",
"name": "SMTP account"
}
},
"typeVersion": 2.1
},
{
"id": "5d28cc94-3193-48e6-9bad-f15baf403645",
"name": "Form Email Sent",
"type": "n8n-nodes-base.form",
"position": [
2120,
-440
],
"webhookId": "a509f577-231f-435f-b3c2-0fed718f0cc8",
"parameters": {
"options": {},
"operation": "completion",
"completionTitle": "Thank you!",
"completionMessage": "We have sent you an email"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "ea9dab20-4b74-45d0-9bf9-b0c1a884fe81",
"connections": {
"Merge": {
"main": [
[
{
"node": "Create a Followup for Company and Person",
"type": "main",
"index": 0
}
]
]
},
"Split Out": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"Send Email": {
"main": [
[
{
"node": "Form Email Sent",
"type": "main",
"index": 0
}
]
]
},
"Edit Url LinkedIn": {
"main": [
[
{
"node": "Get LinkedIn Entry on Google",
"type": "main",
"index": 0
}
]
]
},
"Limit to 1 Profile": {
"main": [
[
{
"node": "LinkedIn Profile is Found?",
"type": "main",
"index": 0
}
]
]
},
"Edit Company Search": {
"main": [
[
{
"node": "Get Company on Google",
"type": "main",
"index": 0
}
]
]
},
"Parse Google Results": {
"main": [
[
{
"node": "Extract Parsed Results",
"type": "main",
"index": 0
}
]
]
},
"Get Company on Google": {
"main": [
[
{
"node": "Extract Body and Title from Website1",
"type": "main",
"index": 0
}
]
]
},
"Extract Parsed Results": {
"main": [
[
{
"node": "Get only Matching Profiles",
"type": "main",
"index": 0
}
]
]
},
"When User Completes Form": {
"main": [
[
{
"node": "Edit Url LinkedIn",
"type": "main",
"index": 0
},
{
"node": "Edit Company Search",
"type": "main",
"index": 0
}
]
]
},
"Get only Matching Profiles": {
"main": [
[
{
"node": "Limit to 1 Profile",
"type": "main",
"index": 0
}
]
]
},
"LinkedIn Profile is Found?": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
],
[
{
"node": "Form Not Found",
"type": "main",
"index": 0
}
]
]
},
"Get LinkedIn Entry on Google": {
"main": [
[
{
"node": "Extract Body and Title from Website",
"type": "main",
"index": 0
}
]
]
},
"Parse Google Results for Company": {
"main": [
[
{
"node": "Split Out",
"type": "main",
"index": 0
}
]
]
},
"Extract Body and Title from Website": {
"main": [
[
{
"node": "Parse Google Results",
"type": "main",
"index": 0
}
]
]
},
"Extract Body and Title from Website1": {
"main": [
[
{
"node": "Parse Google Results for Company",
"type": "main",
"index": 0
}
]
]
},
"Create a Followup for Company and Person": {
"main": [
[
{
"node": "Send Email",
"type": "main",
"index": 0
}
]
]
}
}
}Workflow n8n LinkedIn, recherche de profils, Bright Data : pour qui est ce workflow ?
Ce workflow s'adresse aux recruteurs, aux équipes de ressources humaines et aux professionnels du marketing qui cherchent à optimiser leur processus de recherche de profils LinkedIn. Il est adapté aux entreprises de taille moyenne à grande, ainsi qu'aux utilisateurs ayant une connaissance technique intermédiaire des outils d'automatisation.
Workflow n8n LinkedIn, recherche de profils, Bright Data : problème résolu
Ce workflow résout le problème de la recherche manuelle de profils LinkedIn, qui peut être chronophage et inefficace. En automatisant ce processus, les utilisateurs gagnent du temps et réduisent le risque d'erreurs humaines. Après la mise en place de ce workflow, les utilisateurs bénéficient d'une recherche de profils plus rapide et plus précise, leur permettant d'identifier facilement des candidats ou des contacts pertinents.
Workflow n8n LinkedIn, recherche de profils, Bright Data : étapes du workflow
Étape 1 : Lorsque l'utilisateur complète le formulaire, le workflow est déclenché.
- Étape 1 : Les données du formulaire sont extraites et utilisées pour rechercher des entrées LinkedIn via Bright Data.
- Étape 2 : Les résultats de la recherche sont analysés et filtrés pour ne garder que les profils correspondants.
- Étape 3 : Si un profil est trouvé, le workflow crée un suivi pour la personne et l'entreprise.
- Étape 4 : Un email est envoyé à l'utilisateur pour l'informer des résultats obtenus.
Workflow n8n LinkedIn, recherche de profils, Bright Data : guide de personnalisation
Pour personnaliser ce workflow, vous pouvez modifier les paramètres du formulaire, tels que les champs requis ou la description. Il est également possible d'ajuster les critères de recherche dans les noeuds liés à Bright Data pour cibler des profils spécifiques. Pensez à sécuriser le flux en configurant des options de validation des données et en surveillant les performances du workflow. En outre, vous pouvez intégrer d'autres outils d'automatisation ou de communication selon vos besoins.