MS_TRENDS
Este es unMarket Researchflujo de automatización del dominio deautomatización que contiene 10 nodos.Utiliza principalmente nodos como Xml, Code, Telegram, HttpRequest, TelegramTrigger. Obtener informes de tendencias de Google para un país específico a través de un bot de Telegram
- •Bot Token de Telegram
- •Pueden requerirse credenciales de autenticación para la API de destino
Nodos utilizados (10)
Categoría
{
"id": "9DnO7e6sTnzOsBor",
"meta": {
"instanceId": "c92a0c76586da37fb3ac600956b62e842bfa4bd5f52acc7feb4e8a6e75ca1381",
"templateCredsSetupCompleted": true
},
"name": "MS_TRENDS",
"tags": [],
"nodes": [
{
"id": "b6c68332-9cd6-4b64-b3a4-57c37e665a2f",
"name": "Solicitud HTTP",
"type": "n8n-nodes-base.httpRequest",
"position": [
260,
0
],
"parameters": {
"url": "https://trends.google.com/trending/rss",
"options": {},
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "geo",
"value": "={{ $json.message.text }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "930f0f7d-94bb-48a7-80f4-3948ff830131",
"name": "XML",
"type": "n8n-nodes-base.xml",
"position": [
620,
0
],
"parameters": {
"options": {}
},
"typeVersion": 1
},
{
"id": "88867504-b113-495a-ada0-6d7696482af5",
"name": "Código",
"type": "n8n-nodes-base.code",
"position": [
980,
0
],
"parameters": {
"jsCode": "// 1. Safely access the array of trend items from the input data.\nconst trends = $json.rss?.channel?.item || [];\n\n// If there are no trends, return a friendly message.\nif (trends.length === 0) {\n return [{\n json: {\n text: \"Could not fetch Google Trends data at this time.\"\n }\n }];\n}\n\n// 2. Create a dynamic header for the report in Arabic.\nconst today = new Date().toLocaleDateString('ar-EG', {\n day: 'numeric',\n month: 'long',\n year: 'numeric'\n});\nconst header = `🔥 *Trends report for $('Telegram Trigger').first().json.message.text *\\n_${today}_\\n\\n`;\n\n\n// 3. Process the top 5 trend items to create formatted blocks.\nconst trendBlocks = trends\n .slice(0, 5) // We only want the top 5 trends\n .map((trend, index) => {\n // Get the main details for the trend.\n const rank = index + 1;\n const title = trend.title;\n const traffic = trend['ht:approx_traffic'] || 'Not available';\n\n // Get the top 2 related news articles for this trend.\n const newsItems = (trend['ht:news_item'] || [])\n .slice(0, 2) // We only want the top 2 news items\n .map(news => {\n const newsTitle = news['ht:news_item_title'];\n const newsUrl = news['ht:news_item_url'];\n const newsSource = news['ht:news_item_source'];\n // Format as: \"• [Article Title](url) - _Source_\"\n return `• [${newsTitle}](${newsUrl}) - _${newsSource}_`;\n })\n .join('\\n');\n\n // Combine everything into a single block, optimized for RTL.\n // We put the Arabic title first to help with rendering.\n return `*${title}* (${rank})\\n📈 *Searches:* ${traffic}\\n🗞️ *Related:*\\n${newsItems}`;\n })\n .join('\\n\\n---\\n\\n'); // Join all trend blocks with a separator.\n\n\n// 4. Combine the header and the trend blocks into the final report.\nconst finalReport = header + trendBlocks;\n\n// 5. Wrap the output in the format that n8n expects.\nreturn [{\n json: {\n text: finalReport,\n parse_mode: 'Markdown'\n }\n}];"
},
"typeVersion": 2
},
{
"id": "c8c768d6-f98b-433c-813e-132d650c4f38",
"name": "Send a text message",
"type": "n8n-nodes-base.telegram",
"position": [
1340,
0
],
"webhookId": "eb03235e-b383-40e8-885e-a57f35bb30e2",
"parameters": {
"text": "={{ $json.text }}",
"chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
"additionalFields": {
"parse_mode": "HTML",
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"id": "OymlVCuTPYhVa2B9",
"name": "Telegram account"
}
},
"typeVersion": 1.2
},
{
"id": "1de3838b-87e9-47b2-879f-7e7bcfb1b76d",
"name": "Disparador de Telegram",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-80,
0
],
"webhookId": "6ac6fdc4-a1bc-4346-bfb1-680036eab304",
"parameters": {
"updates": [
"message"
],
"additionalFields": {
"chatIds": "={{ $env.chat_id }}"
}
},
"credentials": {
"telegramApi": {
"id": "OymlVCuTPYhVa2B9",
"name": "Telegram account"
}
},
"typeVersion": 1.2
},
{
"id": "3ed6b167-1d03-43f4-88f3-2a7bff19716e",
"name": "Nota adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
180,
-100
],
"parameters": {
"color": 6,
"width": 260,
"height": 280,
"content": "## Fetch trends \nGets trends for provided country code"
},
"typeVersion": 1
},
{
"id": "c08ee391-6aa5-4daf-83e3-6167ad87e6c3",
"name": "Nota adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
540,
-100
],
"parameters": {
"color": 3,
"width": 260,
"height": 280,
"content": "## Convert to json"
},
"typeVersion": 1
},
{
"id": "8f675ed7-2a06-497b-87ea-6e2e9755914d",
"name": "Nota adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
900,
-100
],
"parameters": {
"color": 7,
"width": 260,
"height": 280,
"content": "## Prepare report"
},
"typeVersion": 1
},
{
"id": "74c4d562-f0dc-4c0a-8a08-1b6d22372f51",
"name": "Nota adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1260,
-100
],
"parameters": {
"color": 5,
"width": 260,
"height": 280,
"content": "## Send report"
},
"typeVersion": 1
},
{
"id": "9419f0f0-ed18-4d48-bc8a-cea1a3efff1b",
"name": "Nota adhesiva4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-100,
-160
],
"parameters": {
"width": 260,
"height": 120,
"content": "## Send country code\nEG | US | SA | ..."
},
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "22911120-2f7e-4017-b43d-94636740d997",
"connections": {
"930f0f7d-94bb-48a7-80f4-3948ff830131": {
"main": [
[
{
"node": "Code",
"type": "main",
"index": 0
}
]
]
},
"Code": {
"main": [
[
{
"node": "c8c768d6-f98b-433c-813e-132d650c4f38",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request": {
"main": [
[
{
"node": "930f0f7d-94bb-48a7-80f4-3948ff830131",
"type": "main",
"index": 0
}
]
]
},
"Telegram Trigger": {
"main": [
[
{
"node": "HTTP Request",
"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 - Investigación de mercado
¿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
M Sayed
@msayed-csCompartir este flujo de trabajo