Extraction et recherche de données ProductHunt pilotées par un agent IA (en utilisant Bright Data et Google Gemini)

Avancé

Ceci est unAI, Marketingworkflow d'automatisation du domainecontenant 21 nœuds.Utilise principalement des nœuds comme Set, Function, McpClient, HttpRequest, GoogleSheets, combinant la technologie d'intelligence artificielle pour une automatisation intelligente. Extraire et rechercher des données ProductHunt avec Bright Data MCP et Google Gemini AI

Prérequis
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
  • Informations d'identification Google Sheets API
  • Clé API Google Gemini
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": "ko4fOc1jV3wKbt7T",
  "meta": {
    "instanceId": "885b4fb4a6a9c2cb5621429a7b972df0d05bb724c20ac7dac7171b62f1c7ef40",
    "templateCredsSetupCompleted": true
  },
  "name": "AI Agent Driven ProductHunt Data Extract & Search with Bright Data & Google Gemini",
  "tags": [
    {
      "id": "Kujft2FOjmOVQAmJ",
      "name": "Engineering",
      "createdAt": "2025-04-09T01:31:00.558Z",
      "updatedAt": "2025-04-09T01:31:00.558Z"
    },
    {
      "id": "ZOwtAMLepQaGW76t",
      "name": "Building Blocks",
      "createdAt": "2025-04-13T15:23:40.462Z",
      "updatedAt": "2025-04-13T15:23:40.462Z"
    },
    {
      "id": "ddPkw7Hg5dZhQu2w",
      "name": "AI",
      "createdAt": "2025-04-13T05:38:08.053Z",
      "updatedAt": "2025-04-13T05:38:08.053Z"
    }
  ],
  "nodes": [
    {
      "id": "5af692c1-c035-49c0-84ac-d9dcff94269b",
      "name": "Lors du clic sur 'Exécuter le workflow'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -640,
        -20
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "c6f927ef-1664-4a4a-b9b0-faf9f9e052b6",
      "name": "Lister tous les outils pour Bright Data",
      "type": "n8n-nodes-mcp.mcpClient",
      "position": [
        -420,
        -20
      ],
      "parameters": {},
      "credentials": {
        "mcpClientApi": {
          "id": "JtatFSfA2kkwctYa",
          "name": "MCP Client (STDIO) account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "08175de9-ddc7-4664-87e9-cf3b6e9008b6",
      "name": "Définir les champs de saisie",
      "type": "n8n-nodes-base.set",
      "position": [
        -200,
        -20
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "ac9abb54-45af-488d-b3f8-f923c85dbda9",
              "name": "base_url",
              "type": "string",
              "value": "https://www.producthunt.com"
            },
            {
              "id": "a15e928c-7c39-46a0-9bd2-5a3a7564d4ed",
              "name": "category",
              "type": "string",
              "value": "resumes"
            },
            {
              "id": "2d440cf4-4e48-400d-9752-1ea6d5cfcc62",
              "name": "search",
              "type": "string",
              "value": "The best resume tools in 2025"
            },
            {
              "id": "5d0e3985-b268-4ca6-8702-07f6f2f439b7",
              "name": "engine",
              "type": "string",
              "value": "google"
            },
            {
              "id": "c4781bc2-b870-4030-9ce8-3b7111a8ea59",
              "name": "webhook_url",
              "type": "string",
              "value": "https://webhook.site/c9118da2-1c54-460f-a83a-e5131b7098db"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "cba889d2-71b7-46fa-a723-00d41e1e891d",
      "name": "Agent IA",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        280,
        -20
      ],
      "parameters": {
        "text": "={{ $json.agent_operation }}\n\nOuput the data in a clean and human readable format. Output only the tool response.",
        "options": {},
        "promptType": "define"
      },
      "retryOnFail": true,
      "typeVersion": 2
    },
    {
      "id": "e2f19c38-899d-475f-87f8-2305c27560ab",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        100,
        220
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.0-flash-exp"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "YeO7dHZnuGBVQKVZ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "bae60554-4022-4af3-a2c7-067235b2f03a",
      "name": "Client MCP pour la recherche Google",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        280,
        220
      ],
      "parameters": {
        "toolName": "search_engine",
        "operation": "executeTool",
        "toolParameters": "={\n   \"query\": \"{{ $('Set the Input Fields').item.json.search }}\",\n   \"engine\": \"{{ $('Set the Input Fields').item.json.engine }}\"\n}  ",
        "descriptionType": "manual",
        "toolDescription": "=Perform a search as per the specified search engine :  {{ $('Set the Input Fields').item.json.engine }}"
      },
      "credentials": {
        "mcpClientApi": {
          "id": "JtatFSfA2kkwctYa",
          "name": "MCP Client (STDIO) account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b1ca5ed5-e0e5-4434-897b-25efad53577f",
      "name": "Client MCP pour l'extraction de données Markdown",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        480,
        220
      ],
      "parameters": {
        "toolName": "scrape_as_markdown",
        "operation": "executeTool",
        "toolParameters": "={\n   \"url\": \"{{ $('Set the Input Fields').item.json.base_url }}/categories/{{ encodeURI($('Set the Input Fields').item.json.category) }}\"\n}  ",
        "descriptionType": "manual",
        "toolDescription": "Perform Product Hunt data scrapping in markdown format"
      },
      "credentials": {
        "mcpClientApi": {
          "id": "JtatFSfA2kkwctYa",
          "name": "MCP Client (STDIO) account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "57305e8e-2731-45e7-b1d8-d9f73786f1da",
      "name": "Définir l'opération de l'agent",
      "type": "n8n-nodes-base.set",
      "position": [
        20,
        -20
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "f243ff07-a39e-4fdc-a32b-2c50e809b3fa",
              "name": "agent_operation",
              "type": "string",
              "value": "=Perform a Product Hunt data extract"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "be721837-c5e8-4ade-98fc-01b6aae10dd9",
      "name": "Créer des données binaires pour l'extraction structurée",
      "type": "n8n-nodes-base.function",
      "position": [
        760,
        -20
      ],
      "parameters": {
        "functionCode": "items[0].binary = {\n  data: {\n    data: new Buffer(JSON.stringify(items[0].json, null, 2)).toString('base64')\n  }\n};\nreturn items;"
      },
      "typeVersion": 1
    },
    {
      "id": "83cf444d-4b85-4688-ac1c-67fb6027b2ec",
      "name": "Écrire le contenu structuré sur le disque",
      "type": "n8n-nodes-base.readWriteFile",
      "position": [
        980,
        -20
      ],
      "parameters": {
        "options": {},
        "fileName": "=d:\\ProductData.json",
        "operation": "write"
      },
      "typeVersion": 1
    },
    {
      "id": "2f179451-1a1d-437a-bddd-370d5deed3a2",
      "name": "Initier une notification Webhook pour les données structurées",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        760,
        180
      ],
      "parameters": {
        "url": "={{ $('Set the Input Fields').item.json.webhook_url }}",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "product_info",
              "value": "={{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "7431be44-2bc5-466a-aa24-cff3aa97ecef",
      "name": "Note adhésive 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        340,
        -420
      ],
      "parameters": {
        "color": 3,
        "width": 440,
        "height": 120,
        "content": "## Disclaimer\nThis template is only available on n8n self-hosted as it's making use of the community node for MCP Client."
      },
      "typeVersion": 1
    },
    {
      "id": "2c01a180-4202-4287-a656-c9afb052c950",
      "name": "Note adhésive 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        -300
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 220,
        "content": "## LLM Usages\n\nGoogle Gemini LLM is being utilized for the AI Agent handling"
      },
      "typeVersion": 1
    },
    {
      "id": "02ba0f5d-f210-46fa-888a-53740f2f57d7",
      "name": "Note adhésive 5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -700,
        -840
      ],
      "parameters": {
        "color": 7,
        "width": 400,
        "height": 400,
        "content": "## Logo\n\n\n![logo](https://images.seeklogo.com/logo-png/43/1/brightdata-logo-png_seeklogo-439974.png)\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2561fbea-ac79-4a48-a141-9906bec656ed",
      "name": "Note adhésive 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -700,
        -400
      ],
      "parameters": {
        "width": 400,
        "height": 320,
        "content": "## Note\n\nDeals with the ProductHunt data extraction by utilizing the Bright Data MCP and Google Gemini LLM.\n\n**Please make sure to set the input fields node and the agent operation node to fulfill your needs**"
      },
      "typeVersion": 1
    },
    {
      "id": "7c7e69f2-393e-4725-9bc6-0fd6e3271ea0",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        -460
      ],
      "parameters": {
        "color": 4,
        "width": 440,
        "height": 120,
        "content": "## Agent Operation\n\n1. Perform a Product Hunt data extract\n2. Google search and extract data"
      },
      "typeVersion": 1
    },
    {
      "id": "823039f1-e41f-4286-adde-4da05924f8cf",
      "name": "Extracteur de données structurées",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        760,
        440
      ],
      "parameters": {
        "text": "=Extract the links, keywords, description from  {{ $('AI Agent').item.json.output }}\n\nConstruct the links with the base url as {{ $('Set the Input Fields').item.json.base_url }}",
        "batching": {},
        "promptType": "define",
        "hasOutputParser": true
      },
      "retryOnFail": true,
      "typeVersion": 1.7
    },
    {
      "id": "467a58f7-b480-4975-9045-17ffef12553b",
      "name": "Analyseur de sortie structurée",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        980,
        640
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n\t\"type\": \"array\",\n\t\"properties\": {\n\t\t\"link\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n        \"desc\": {\n\t\t\t\"type\": \"string\"\n\t\t}\n\t}\n}"
      },
      "typeVersion": 1.2
    },
    {
      "id": "c6a9ef1d-f1d8-469c-a149-20b70613a7a4",
      "name": "Google Gemini Chat Model (extraction de données structurées)",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        740,
        640
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.0-flash-exp"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "YeO7dHZnuGBVQKVZ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d9ca7a55-ccb8-4c34-aec1-792f67e7cab4",
      "name": "Mettre à jour Google Sheets pour les données structurées",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1200,
        440
      ],
      "parameters": {
        "columns": {
          "value": {
            "structured_data": "={{ $json.output.toJsonString() }}"
          },
          "schema": [
            {
              "id": "structured_data",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "structured_data",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "structured_data"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1785677350,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1cmJkB_DuSUbHoZ-LthySa7utEZFIvzeLinGcHjMyvzI/edit#gid=1785677350",
          "cachedResultName": "Sheet2"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1cmJkB_DuSUbHoZ-LthySa7utEZFIvzeLinGcHjMyvzI",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1cmJkB_DuSUbHoZ-LthySa7utEZFIvzeLinGcHjMyvzI/edit?usp=drivesdk",
          "cachedResultName": "ProductHunt"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "Zjoxh2BUZ6VXGQhA",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "380351d4-2b49-4824-bbb6-3bba45f9fb37",
      "name": "Mettre à jour Google Sheets pour l'agent IA",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        760,
        -220
      ],
      "parameters": {
        "columns": {
          "value": {
            "output": "={{ $json.output.toJsonString() }}"
          },
          "schema": [
            {
              "id": "output",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "output",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "output"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/10gAihQMT8-h8Mpehe9j-xxN4oTTpg8qwToI-I-Eauew/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1cmJkB_DuSUbHoZ-LthySa7utEZFIvzeLinGcHjMyvzI",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1cmJkB_DuSUbHoZ-LthySa7utEZFIvzeLinGcHjMyvzI/edit?usp=drivesdk",
          "cachedResultName": "ProductHunt"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "Zjoxh2BUZ6VXGQhA",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.5
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "07e2bb99-d6bf-4023-b61a-582436d22d04",
  "connections": {
    "cba889d2-71b7-46fa-a723-00d41e1e891d": {
      "main": [
        [
          {
            "node": "be721837-c5e8-4ade-98fc-01b6aae10dd9",
            "type": "main",
            "index": 0
          },
          {
            "node": "2f179451-1a1d-437a-bddd-370d5deed3a2",
            "type": "main",
            "index": 0
          },
          {
            "node": "380351d4-2b49-4824-bbb6-3bba45f9fb37",
            "type": "main",
            "index": 0
          },
          {
            "node": "823039f1-e41f-4286-adde-4da05924f8cf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "08175de9-ddc7-4664-87e9-cf3b6e9008b6": {
      "main": [
        [
          {
            "node": "57305e8e-2731-45e7-b1d8-d9f73786f1da",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "57305e8e-2731-45e7-b1d8-d9f73786f1da": {
      "main": [
        [
          {
            "node": "cba889d2-71b7-46fa-a723-00d41e1e891d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e2f19c38-899d-475f-87f8-2305c27560ab": {
      "ai_languageModel": [
        [
          {
            "node": "cba889d2-71b7-46fa-a723-00d41e1e891d",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "467a58f7-b480-4975-9045-17ffef12553b": {
      "ai_outputParser": [
        [
          {
            "node": "823039f1-e41f-4286-adde-4da05924f8cf",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "823039f1-e41f-4286-adde-4da05924f8cf": {
      "main": [
        [
          {
            "node": "d9ca7a55-ccb8-4c34-aec1-792f67e7cab4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bae60554-4022-4af3-a2c7-067235b2f03a": {
      "ai_tool": [
        [
          {
            "node": "cba889d2-71b7-46fa-a723-00d41e1e891d",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "c6f927ef-1664-4a4a-b9b0-faf9f9e052b6": {
      "main": [
        [
          {
            "node": "08175de9-ddc7-4664-87e9-cf3b6e9008b6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b1ca5ed5-e0e5-4434-897b-25efad53577f": {
      "ai_tool": [
        [
          {
            "node": "cba889d2-71b7-46fa-a723-00d41e1e891d",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "5af692c1-c035-49c0-84ac-d9dcff94269b": {
      "main": [
        [
          {
            "node": "c6f927ef-1664-4a4a-b9b0-faf9f9e052b6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "be721837-c5e8-4ade-98fc-01b6aae10dd9": {
      "main": [
        [
          {
            "node": "83cf444d-4b85-4688-ac1c-67fb6027b2ec",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c6a9ef1d-f1d8-469c-a149-20b70613a7a4": {
      "ai_languageModel": [
        [
          {
            "node": "823039f1-e41f-4286-adde-4da05924f8cf",
            "type": "ai_languageModel",
            "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é ?

Avancé - Intelligence Artificielle, Marketing

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.

Workflows recommandés

Extraction structurée de données de recherche Brave (Bright Data MCP + Google Gemini)
Extraire des données structurées à partir de recherches Brave avec Bright Data MCP et Google Gemini
Set
Switch
Function
+
Set
Switch
Function
24 NœudsRanjan Dailata
Intelligence Artificielle
Recherche et extraction d'entreprises DNB avec Bright Data et OpenAI 4o mini
Recherche et extraction d'entreprises DNB avec Bright Data et OpenAI 4o mini
Set
Function
Mcp Client
+
Set
Function
Mcp Client
18 NœudsRanjan Dailata
Produit
Extraction, résumé et analyse des baisses de prix des produits Amazon avec Bright Data
utilisationBright DataetGoogle Geminiextraction、总结etanalyse亚马逊降价信息
Set
Wait
Merge
+
Set
Wait
Merge
26 NœudsRanjan Dailata
Intelligence Artificielle
Extracteur d'études de cas juridiques, Mineur de données avec Bright Data MCP et Google Gemini
Extracteur d'études de cas juridiques, mineur de données utilisant Bright Data MCP et Google Gemini
Set
Code
Wait
+
Set
Code
Wait
22 NœudsRanjan Dailata
Intelligence Artificielle
Extraction, résumé et analyse de sentiment de contenu de marque avec Bright Data
Extraire et analyser le contenu de marque avec Bright Data et Google Gemini
Set
Function
Http Request
+
Set
Function
Http Request
23 NœudsRanjan Dailata
Intelligence Artificielle
Extraction de pages LinkedIn à l'aide du serveur MCP Bright Data et de Google Gemini
utilisationBright Data MCP服务器etGoogle GeminiextractionetconversionLinkedIndonnées
Set
Code
Merge
+
Set
Code
Merge
20 NœudsRanjan Dailata
Intelligence Artificielle
Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds21
Catégorie2
Types de nœuds13
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Auteur
Ranjan Dailata

Ranjan Dailata

@ranjancse

A Professional based out of India specialized in handling AI-powered automations. Contact me at ranjancse@gmail.com

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34