MS_TRENDS

Intermédiaire

Ceci est unMarket Researchworkflow d'automatisation du domainecontenant 10 nœuds.Utilise principalement des nœuds comme Xml, Code, Telegram, HttpRequest, TelegramTrigger. viaTelegrambotobtenir特定国家deGoogle趋势rapport

Prérequis
  • Token Bot Telegram
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "9DnO7e6sTnzOsBor",
  "meta": {
    "instanceId": "c92a0c76586da37fb3ac600956b62e842bfa4bd5f52acc7feb4e8a6e75ca1381",
    "templateCredsSetupCompleted": true
  },
  "name": "MS_TRENDS",
  "tags": [],
  "nodes": [
    {
      "id": "b6c68332-9cd6-4b64-b3a4-57c37e665a2f",
      "name": "Requête 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": "Code",
      "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": "Envoyer un message texte",
      "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": "Déclencheur 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": "Note adhésive",
      "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": "Note adhésive1",
      "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": "Note adhésive2",
      "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": "Note adhésive3",
      "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": "Note adhésive4",
      "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": "88867504-b113-495a-ada0-6d7696482af5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "88867504-b113-495a-ada0-6d7696482af5": {
      "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
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Intermédiaire - Étude de marché

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds10
Catégorie1
Types de nœuds6
Description de la difficulté

Adapté aux utilisateurs expérimentés, avec des workflows de complexité moyenne contenant 6-15 nœuds

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34