Extraer correos electrónicos de creadores de YouTube usando el crawler de Apify y GPT-4o Mini
Este es unAI Summarization, Multimodal AIflujo de automatización del dominio deautomatización que contiene 12 nodos.Utiliza principalmente nodos como Set, HttpRequest, ManualTrigger, SplitInBatches, Agent. Usar un crawler de Apify y GPT-4o Mini para extraer correos electrónicos de creadores de YouTube
- •Pueden requerirse credenciales de autenticación para la API de destino
- •Clave de API de OpenAI
Nodos utilizados (12)
Categoría
{
"meta": {
"instanceId": "ad0113c344ee237399e44e9f11798b05baeb83a6196d514a9ae9d2ad71c3b5c9",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "42c65e43-6fd0-4701-b237-4d308767dc71",
"name": "Al hacer clic en 'Ejecutar flujo de trabajo'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-1328,
4064
],
"parameters": {},
"typeVersion": 1
},
{
"id": "3ee44563-519c-41d9-ac0a-e554c398b562",
"name": "Nota adhesiva17",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1840,
3920
],
"parameters": {
"width": 400,
"height": 928,
"content": "## ⚙️ Setup Instructions\n\n### 1️⃣ Set Up OpenAI Connection\n1. Go to [OpenAI Platform](https://platform.openai.com/api-keys) \n2. Navigate to [OpenAI Billing](https://platform.openai.com/settings/organization/billing/overview) \n3. Add funds to your billing account \n4. Copy your API key into the **OpenAI credentials** in n8n \n\n### 2️⃣ Set Up Apify Connection\n1. Go to [Apify Console](https://console.apify.com/) and sign up/login \n2. Get your API token here: [Apify API Keys](https://console.apify.com/account/integrations) \n3. Set up the two scrapers in your Apify account: \n - [YouTube Scraper by streamers](https://apify.com/streamers/youtube-scraper) \n - [YouTube Scraper by apidojo](https://apify.com/apidojo/youtube-scraper) \n4. In n8n, create a **HTTP Query Auth** credential \n - Query Key: `token` \n - Value: `YOUR_APIFY_API_KEY` \n5. Attach this credential to both **HTTP Request nodes** (`Search YouTube` and `Scrape Channels`) \n\n---\n\n\n## 📬 Contact Information\nNeed help customizing this workflow or building similar automations? \n\n📧 [robert@ynteractive.com](mailto:robert@ynteractive.com) \n🔗 [Robert Breen](https://www.linkedin.com/in/robert-breen-29429625/) \n🌐 [ynteractive.com](https://ynteractive.com) \n"
},
"typeVersion": 1
},
{
"id": "77b25aac-86e6-4eab-8b6d-eabe92ae9a28",
"name": "Nota adhesiva18",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1392,
3920
],
"parameters": {
"color": 7,
"width": 1392,
"height": 928,
"content": "# 📨 YouTube Creator Email Finder (n8n + Apify + OpenAI)\n\nThis workflow automates the process of finding **YouTube creator contact emails** for outreach and partnerships. It combines **Apify scrapers** with **OpenAI** to deliver a clean list of emails from channel descriptions: \n"
},
"typeVersion": 1
},
{
"id": "9243bdc9-5d5f-41f8-b219-fd0195e52367",
"name": "Analizador de salida estructurada4",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-224,
4496
],
"parameters": {
"jsonSchemaExample": "{\n\t\"emails\": [\"email1\", \"email2\"]\n}"
},
"typeVersion": 1.3
},
{
"id": "93eab497-180b-4430-91fb-f29abb01d59f",
"name": "OpenAI Chat Model3",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-528,
4624
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "4l6TDfLZVFS24g3X",
"name": "OpenAi account 4"
}
},
"typeVersion": 1.2
},
{
"id": "e1060cad-64e1-4c74-9bbe-05b270116c9a",
"name": "Buscar Youtube",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1216,
4672
],
"parameters": {
"url": "=https://api.apify.com/v2/acts/streamers~youtube-scraper/run-sync-get-dataset-items\n",
"method": "POST",
"options": {},
"jsonBody": "={\n \"dateFilter\": \"month\",\n \"downloadSubtitles\": false,\n \"hasCC\": false,\n \"hasLocation\": false,\n \"hasSubtitles\": false,\n \"is360\": false,\n \"is3D\": false,\n \"is4K\": false,\n \"isBought\": false,\n \"isHD\": false,\n \"isHDR\": false,\n \"isLive\": false,\n \"isVR180\": false,\n \"lengthFilter\": \"under4\",\n \"maxResultStreams\": 0,\n \"maxResults\": {{ $json.channels }},\n \"maxResultsShorts\": 0,\n \"oldestPostDate\": \"10 days\",\n \"preferAutoGeneratedSubtitles\": false,\n \"saveSubsToKVS\": false,\n \"searchQueries\": [\n \"{{ $json.Search }}\"\n ],\n \"sortingOrder\": \"relevance\"\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpQueryAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "wR5zdRq0CfAhl2yx",
"name": "Query Auth account"
}
},
"typeVersion": 4.2
},
{
"id": "5b5d1252-9917-490a-ab37-21125383101b",
"name": "Iterar sobre elementos",
"type": "n8n-nodes-base.splitInBatches",
"position": [
-880,
4192
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "21d45ff7-7e36-4bc3-86aa-c9532050549d",
"name": "Nota adhesiva19",
"type": "n8n-nodes-base.stickyNote",
"position": [
-624,
4464
],
"parameters": {
"color": 3,
"width": 288,
"height": 304,
"content": "### 1️⃣ Set Up OpenAI Connection\n1. Go to [OpenAI Platform](https://platform.openai.com/api-keys) \n2. Navigate to [OpenAI Billing](https://platform.openai.com/settings/organization/billing/overview) \n3. Add funds to your billing account \n4. Copy your API key into the **OpenAI credentials** in n8n "
},
"typeVersion": 1
},
{
"id": "e6f062bd-6b74-4639-b0c0-409d233c27da",
"name": "Establecer término de búsqueda y número de búsquedas",
"type": "n8n-nodes-base.set",
"position": [
-1136,
4064
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "86221d8e-18d1-4a37-9ffe-b31db3a3441d",
"name": "Search",
"type": "string",
"value": "n8n workflows"
},
{
"id": "59c2fc27-8a31-4760-b2ea-713e676a2be8",
"name": "channels",
"type": "string",
"value": "2"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "f4e3e8ac-b072-42fc-8c7b-b9d260caffd5",
"name": "Extraer canales",
"type": "n8n-nodes-base.httpRequest",
"position": [
-624,
4080
],
"parameters": {
"url": "=https://api.apify.com/v2/acts/apidojo~youtube-scraper/run-sync-get-dataset-items\n",
"method": "POST",
"options": {},
"jsonBody": "={\n \"customMapFunction\": \"(object) => { return {...object} }\",\n \"duration\": \"all\",\n \"features\": \"all\",\n \"getTrending\": false,\n \"includeShorts\": false,\n \"maxItems\": 1,\n \"sort\": \"r\",\n \"startUrls\": [\n \"{{ $json.channelUrl }}\"\n ],\n \"uploadDate\": \"all\"\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpQueryAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "wR5zdRq0CfAhl2yx",
"name": "Query Auth account"
}
},
"typeVersion": 4.2
},
{
"id": "9ba55e16-493f-4d0d-808a-a8de656a02fe",
"name": "Nota adhesiva20",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1312,
4288
],
"parameters": {
"color": 3,
"width": 288,
"height": 512,
"content": "### 2️⃣ Set Up Apify Connection\n1. Go to [Apify Console](https://console.apify.com/) and sign up/login \n2. Get your API token here: [Apify API Keys](https://console.apify.com/account/integrations) \n3. Set up the two scrapers in your Apify account: \n - [YouTube Scraper by streamers](https://apify.com/streamers/youtube-scraper) \n - [YouTube Scraper by apidojo](https://apify.com/apidojo/youtube-scraper) \n4. In n8n, create a **HTTP Query Auth** credential \n - Query Key: `token` \n - Value: `YOUR_APIFY_API_KEY` \n5. Attach this credential to both **HTTP Request nodes** (`Search YouTube` and `Scrape Channels`) "
},
"typeVersion": 1
},
{
"id": "6a580837-44e4-4abe-acd8-e86a8acae04e",
"name": "Extraer dirección de correo electrónico",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-400,
4192
],
"parameters": {
"text": "={{ $json.description }}",
"options": {
"systemMessage": "extract email addresses from this. if they are in a bad format, format them. \n\noutput likd this. \n\n\n{\n\t\"emails\": [\"email1\", \"email2\"]\n}"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
}
],
"pinData": {},
"connections": {
"e1060cad-64e1-4c74-9bbe-05b270116c9a": {
"main": [
[
{
"node": "5b5d1252-9917-490a-ab37-21125383101b",
"type": "main",
"index": 0
}
]
]
},
"5b5d1252-9917-490a-ab37-21125383101b": {
"main": [
[],
[
{
"node": "f4e3e8ac-b072-42fc-8c7b-b9d260caffd5",
"type": "main",
"index": 0
}
]
]
},
"f4e3e8ac-b072-42fc-8c7b-b9d260caffd5": {
"main": [
[
{
"node": "6a580837-44e4-4abe-acd8-e86a8acae04e",
"type": "main",
"index": 0
}
]
]
},
"93eab497-180b-4430-91fb-f29abb01d59f": {
"ai_languageModel": [
[
{
"node": "6a580837-44e4-4abe-acd8-e86a8acae04e",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"6a580837-44e4-4abe-acd8-e86a8acae04e": {
"main": [
[
{
"node": "5b5d1252-9917-490a-ab37-21125383101b",
"type": "main",
"index": 0
}
]
]
},
"9243bdc9-5d5f-41f8-b219-fd0195e52367": {
"ai_outputParser": [
[
{
"node": "6a580837-44e4-4abe-acd8-e86a8acae04e",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"e6f062bd-6b74-4639-b0c0-409d233c27da": {
"main": [
[
{
"node": "e1060cad-64e1-4c74-9bbe-05b270116c9a",
"type": "main",
"index": 0
}
]
]
},
"42c65e43-6fd0-4701-b237-4d308767dc71": {
"main": [
[
{
"node": "e6f062bd-6b74-4639-b0c0-409d233c27da",
"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?
Intermedio - Resumen de IA, 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
Robert Breen
@rbreenProfessional services consultant with over 10 years of experience solving complex business problems across industries. I specialize in n8n and process automation—designing custom workflows that integrate tools like Google Calendar, Airtable, GPT, and internal systems. Whether you need to automate scheduling, sync data, or streamline operations, I build solutions that save time and drive results.
Compartir este flujo de trabajo