Extracción de correos electrónicos del sitio web ELV
Este es unLead Generation, Multimodal AIflujo de automatización del dominio deautomatización que contiene 20 nodos.Utiliza principalmente nodos como If, Set, Code, Merge, SplitOut. Extraer direcciones de correo electrónico de sitios web y almacenar en Google Sheets con EmailListVerify API
- •Pueden requerirse credenciales de autenticación para la API de destino
- •Credenciales de API de Google Sheets
Nodos utilizados (20)
Categoría
{
"id": "KnV10oDIARtVSmw7",
"meta": {
"instanceId": "42f06bdbe33c6e48441258a73a5cbec4a66a97aff3a765b2ca73c67ed394d25f",
"templateId": "2134",
"templateCredsSetupCompleted": true
},
"name": "ELV Extract emails from website",
"tags": [],
"nodes": [
{
"id": "466cf9ce-4baf-45f9-bd70-d2041c20605e",
"name": "Nota adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
1168,
80
],
"parameters": {
"color": 4,
"width": 1300,
"height": 598,
"content": "\n* Scraping emails from websites using an html"
},
"typeVersion": 1
},
{
"id": "ea95c9a3-b7c8-4288-8fdf-6504caee46f4",
"name": "Nota adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
240
],
"parameters": {
"width": 728.4741979436378,
"height": 430.0825742795921,
"content": "# How to get emails from websites\n\nThis workflow will :\n- Try to find emails by scraping the website\n- If no result is found, it will use EmailListVerify to guess an email address\n\n\nPay attention that this workflow will usually return only generic emails like \"contact@\". Those generic emails are useful when you target small businesses; the owner usually monitors those emails. However, I don't advise this workflow to target enterprise customers.\n\nIn order to use this workflow, you will need:\n- To copy this Google sheet : https://docs.google.com/spreadsheets/d/1VOTFM8UeWHhJbtBM7SRca6vsVJlRUXzX71kjJ8n2jUY/edit?gid=1538095319#gid=1538095319\n- Get an API key for [EmailListVerify](https://emaillistverify.com/)\n\n\nYou then need to edit the setup of the 3 stages highlighted with a yellow sticky notes, and you will be good to go.\n\n\n"
},
"typeVersion": 1
},
{
"id": "555c8f81-25ea-4be5-b260-7b6039c705a8",
"name": "Obtener datos del sitio web",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
2096,
464
],
"parameters": {
"url": "={{ $json.url }}",
"options": {}
},
"retryOnFail": true,
"typeVersion": 4.1
},
{
"id": "e83b38b8-dc13-49eb-9482-1dbd8a9ef583",
"name": "Extraer correos encontrados",
"type": "n8n-nodes-base.set",
"position": [
2272,
464
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "80a8a8ec-9ac7-4545-beab-390732218548",
"name": "Email",
"type": "array",
"value": "={{$json.data.match(/(?:[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,})/g)}}"
}
]
}
},
"typeVersion": 3.3
},
{
"id": "3f9230c9-e46d-42e7-9020-82715ff197bb",
"name": "Al hacer clic en 'Ejecutar flujo de trabajo'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
1296,
464
],
"parameters": {},
"typeVersion": 1
},
{
"id": "a8a3a8f7-7cb5-4d82-bc30-df9f9927636e",
"name": "Nota adhesiva5",
"type": "n8n-nodes-base.stickyNote",
"position": [
3408,
320
],
"parameters": {
"height": 535.9388810024284,
"content": "## Add your ELV API Key\n\nStart a free trial at EmailListVerify.com and get your API key."
},
"typeVersion": 1
},
{
"id": "cbe22fca-9469-48b7-8c13-e1307a107b9c",
"name": "Nota adhesiva6",
"type": "n8n-nodes-base.stickyNote",
"position": [
3184,
160
],
"parameters": {
"color": 3,
"width": 664,
"height": 780,
"content": "## Find email address with EmailListVerify\nFind generic email address with EmailListVerify API if the website is known\n"
},
"typeVersion": 1
},
{
"id": "cec669b5-83d6-4251-983a-7e66732dec1a",
"name": "Usar EmailListVerify API para encontrar correos genéricos",
"type": "n8n-nodes-base.httpRequest",
"position": [
3472,
608
],
"parameters": {
"url": "https://api.emaillistverify.com/api/findContact",
"method": "POST",
"options": {},
"jsonBody": "={\n \"domain\": \"{{ $json.domain }}\"\n} ",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "get your own API key",
"name": "Query Auth account 2"
},
"httpHeaderAuth": {
"id": "get your own API key",
"name": "Header Auth account 2"
}
},
"typeVersion": 4.2
},
{
"id": "a39406fd-f126-418b-ba16-652bd0944f8a",
"name": "Transformar sitio web en nombre de dominio1",
"type": "n8n-nodes-base.code",
"position": [
3264,
608
],
"parameters": {
"jsCode": "console.log($input.all())\n\n\nconst data = $input.all()\n\nconsole.log(\"start filter\")\nconsole.log(data)\n\nlet merged = []\nfor (let line of data){\n console.log(line)\n try{\n let lineObject = line[\"json\"] \n let url = lineObject[\"website\"];\n\n let domainStart = url.indexOf(\"/\");\n let domainEnd = url.indexOf(\"/\" ,domainStart + 2 );\n let domain = url.slice(domainStart + 2, domainEnd);\n\n // exception if the domain doesnet containt /\n if(domainStart < 0){\n domain = url\n }\n \n if(domain.slice(0,4)==\"www.\"){\n domain = domain.slice(4,domain.length)\n }\n \n console.log(domain)\n lineObject[\"domain\"] = domain;\n merged.push(lineObject);\n } catch (e) {\n console.log(\"error\")\n console.log(e)\n }\n \n}\n\n\n\nconsole.log(merged);\n\n\nreturn merged;"
},
"typeVersion": 2
},
{
"id": "7ab9c843-05c3-4a66-8de4-8c22fcc95c1b",
"name": "Combinar",
"type": "n8n-nodes-base.merge",
"position": [
2672,
160
],
"parameters": {
"mode": "combine",
"options": {},
"combineBy": "combineByPosition"
},
"typeVersion": 3.2
},
{
"id": "2f9a325d-433c-45e4-a092-80b35db39820",
"name": "Obtener datos de entrada",
"type": "n8n-nodes-base.googleSheets",
"position": [
1488,
464
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "name",
"value": "Input"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "https://docs.google.com/spreadsheets/d/1VOTFM8UeWHhJbtBM7SRca6vsVJlRUXzX71kjJ8n2jUY/edit?gid=0#"
}
},
"credentials": {
"googleSheetsOAuth2Api": {}
},
"typeVersion": 4.7
},
{
"id": "83d24421-73aa-428e-801f-b7f8607e6fb1",
"name": "Agregar http a la URL si falta",
"type": "n8n-nodes-base.code",
"position": [
1808,
464
],
"parameters": {
"jsCode": "console.log($input.all())\n\n\nconst data = $input.all()\n\nconsole.log(\"start filter\")\nconsole.log(data)\n\nlet merged = []\n\nfor (let line of data){\n console.log(line)\n try{\n let lineObject = line[\"json\"] \n let url = lineObject[\"website\"];\n \n let domainStart = url.indexOf(\"http\");\n\n let domain \n if(domainStart > -1 ){\n domain = url\n } else {\n domain = \"http://\" + url\n }\n \n console.log(domain)\n\n \n \n merged.push({\"url\": domain});\n } catch (e) {\n console.log(\"error\")\n console.log(e)\n }\n \n}\n\n\n\n//console.log(merged);\n\n\nreturn merged;"
},
"typeVersion": 2
},
{
"id": "f66d0652-5776-4121-8e97-0f9c1b387236",
"name": "¿Correo encontrado?",
"type": "n8n-nodes-base.if",
"position": [
2896,
160
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "9cf8bf40-c610-4c63-bc0e-becf32c5998f",
"operator": {
"type": "array",
"operation": "lengthGt",
"rightType": "number"
},
"leftValue": "={{ $json.Email }}",
"rightValue": 0
}
]
}
},
"typeVersion": 2.2
},
{
"id": "fc2df885-4756-4aee-bb2e-23fae5b7cf9e",
"name": "Transformar sitio web en nombre de dominio",
"type": "n8n-nodes-base.code",
"position": [
3712,
608
],
"parameters": {
"jsCode": "console.log($input.all())\n\n\nconst data = $input.all()\n\nconsole.log(\"start filter\")\nconsole.log(data)\n\nlet merged = []\nfor (let line of data){\n console.log(line)\n try{\n let lineObject = line[\"json\"] \n let url = lineObject[\"email\"];\n\n let domainStart = url.indexOf(\"@\");\n\n let domain = url.slice( domainStart + 1, url.length);\n\n \n console.log(domain)\n lineObject[\"website\"] = domain;\n merged.push(lineObject);\n } catch (e) {\n console.log(\"error\")\n console.log(e)\n }\n \n}\n\n\n\nconsole.log(merged);\n\n\nreturn merged;"
},
"typeVersion": 2
},
{
"id": "37ea428a-51c3-4742-aca3-01278386353c",
"name": "Agregar resultado a google",
"type": "n8n-nodes-base.googleSheets",
"position": [
4112,
-288
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "website",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "email",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "email",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "confidence",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "confidence",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "name",
"value": "Output"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "https://docs.google.com/spreadsheets/d/1VOTFM8UeWHhJbtBM7SRca6vsVJlRUXzX71kjJ8n2jUY/edit?gid=1538095319#gid=1538095319"
}
},
"credentials": {
"googleSheetsOAuth2Api": {}
},
"typeVersion": 4.2
},
{
"id": "4702a725-fd91-431b-ab24-795ed562c35e",
"name": "Dividir",
"type": "n8n-nodes-base.splitOut",
"position": [
3888,
-288
],
"parameters": {
"include": "selectedOtherFields",
"options": {
"destinationFieldName": "email"
},
"fieldToSplitOut": "Email",
"fieldsToInclude": "website"
},
"typeVersion": 1
},
{
"id": "c9f2e12f-2e7e-42cd-9206-98fb7ddc4af7",
"name": "Nota adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
2592,
64
],
"parameters": {
"color": 4,
"width": 500,
"height": 310,
"content": "\n* Check if email was found"
},
"typeVersion": 1
},
{
"id": "eb9f6294-e50f-4290-a394-e76fbf59d170",
"name": "Nota adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
3840,
-656
],
"parameters": {
"color": 4,
"width": 500,
"height": 774,
"content": "\n* Add result to google sheet"
},
"typeVersion": 1
},
{
"id": "05b8a70e-afd2-4dda-ac63-f435c0ed400f",
"name": "Nota adhesiva7",
"type": "n8n-nodes-base.stickyNote",
"position": [
4048,
-576
],
"parameters": {
"height": 535.9388810024284,
"content": "## copy template\n\nhttps://docs.google.com/spreadsheets/d/1VOTFM8UeWHhJbtBM7SRca6vsVJlRUXzX71kjJ8n2jUY/edit?gid=1538095319#gid=1538095319\n\nFile need to include column email, website é confidence"
},
"typeVersion": 1
},
{
"id": "1f6a17b8-a8bf-4e8c-8ea3-ebaeac9a1605",
"name": "Nota adhesiva8",
"type": "n8n-nodes-base.stickyNote",
"position": [
1440,
192
],
"parameters": {
"height": 472,
"content": "## copy template\n\nhttps://docs.google.com/spreadsheets/d/1VOTFM8UeWHhJbtBM7SRca6vsVJlRUXzX71kjJ8n2jUY/edit?gid=1538095319#gid=1538095319\n\nAdd target url in Input sheet"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "e5805dcf-b757-4c3e-9ea2-575f012ac5b6",
"connections": {
"7ab9c843-05c3-4a66-8de4-8c22fcc95c1b": {
"main": [
[
{
"node": "f66d0652-5776-4121-8e97-0f9c1b387236",
"type": "main",
"index": 0
}
]
]
},
"4702a725-fd91-431b-ab24-795ed562c35e": {
"main": [
[
{
"node": "37ea428a-51c3-4742-aca3-01278386353c",
"type": "main",
"index": 0
}
]
]
},
"f66d0652-5776-4121-8e97-0f9c1b387236": {
"main": [
[
{
"node": "4702a725-fd91-431b-ab24-795ed562c35e",
"type": "main",
"index": 0
}
],
[
{
"node": "a39406fd-f126-418b-ba16-652bd0944f8a",
"type": "main",
"index": 0
}
]
]
},
"2f9a325d-433c-45e4-a092-80b35db39820": {
"main": [
[
{
"node": "83d24421-73aa-428e-801f-b7f8607e6fb1",
"type": "main",
"index": 0
},
{
"node": "7ab9c843-05c3-4a66-8de4-8c22fcc95c1b",
"type": "main",
"index": 1
}
]
]
},
"555c8f81-25ea-4be5-b260-7b6039c705a8": {
"main": [
[
{
"node": "e83b38b8-dc13-49eb-9482-1dbd8a9ef583",
"type": "main",
"index": 0
}
]
]
},
"e83b38b8-dc13-49eb-9482-1dbd8a9ef583": {
"main": [
[
{
"node": "7ab9c843-05c3-4a66-8de4-8c22fcc95c1b",
"type": "main",
"index": 0
}
]
]
},
"83d24421-73aa-428e-801f-b7f8607e6fb1": {
"main": [
[
{
"node": "555c8f81-25ea-4be5-b260-7b6039c705a8",
"type": "main",
"index": 0
}
]
]
},
"fc2df885-4756-4aee-bb2e-23fae5b7cf9e": {
"main": [
[
{
"node": "37ea428a-51c3-4742-aca3-01278386353c",
"type": "main",
"index": 0
}
]
]
},
"a39406fd-f126-418b-ba16-652bd0944f8a": {
"main": [
[
{
"node": "cec669b5-83d6-4251-983a-7e66732dec1a",
"type": "main",
"index": 0
}
]
]
},
"3f9230c9-e46d-42e7-9020-82715ff197bb": {
"main": [
[
{
"node": "2f9a325d-433c-45e4-a092-80b35db39820",
"type": "main",
"index": 0
}
]
]
},
"cec669b5-83d6-4251-983a-7e66732dec1a": {
"main": [
[
{
"node": "fc2df885-4756-4aee-bb2e-23fae5b7cf9e",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado - Generación de leads, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Compartir este flujo de trabajo