Utiliser NewsAPI et Google Gemini pour générer automatiquement des articles de blog sur l'actualité technologique et les publier sur WordPress
Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 9 nœuds.Utilise principalement des nœuds comme Code, Wordpress, HttpRequest, SplitInBatches, Agent. Génération automatique et publication d'articles de blog sur la technologie avec NewsAPI et Google Gemini, publication sur WordPress
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Clé API Google Gemini
Nœuds utilisés (9)
Catégorie
{
"meta": {
"instanceId": "2000c64071c20843606b95c63795bb0797c41036047055a6586498e855b96efc",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "ba65f2c4-f38e-407c-87d8-5540a98ce6e3",
"name": "Note adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
-336,
-176
],
"parameters": {
"width": 2092,
"height": 588,
"content": "## Daily News Digest Automation\n\n**What it does:**\n- Fetches top tech news every day at 8 AM\n- AI summarizes and creates engaging blog post\n- Auto-publishes to WordPress\n\n**Setup Required:**\n1. Get free NewsAPI key from newsapi.org\n2. Replace YOUR_API_KEY in the HTTP Request URL with your actual key\n3. Configure WordPress credentials in the WordPress node\n4. Set up Google Gemini API credentials for AI agent\n\n**Customization:**\n- Change schedule time in trigger (currently 8 AM daily)\n- Modify news sources/categories in URL parameters\n- Adjust AI prompt for different writing styles\n- Change post status from \"publish\" to \"draft\" for review\n\n**Need Help?**\nFor [n8n coaching or one-on-one consultation:](mailto:david@daexai.com)"
},
"typeVersion": 1,
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "AI News Summarizer",
"type": "ai_languageModel",
"index": 0
}
]
]
}
},
{
"id": "8f0b8ffe-e898-4d43-8b67-1ebe60c2e3a6",
"name": "Déclencheur quotidien 8h",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
128,
48
],
"parameters": {
"rule": {
"interval": [
{
"field": "cronExpression",
"expression": "0 8 * * *"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "f002cec0-eee4-457e-9b81-81b1bc4cf8aa",
"name": "Récupérer l'actualité tech",
"type": "n8n-nodes-base.httpRequest",
"position": [
320,
48
],
"parameters": {
"url": "https://newsapi.org/v2/top-headlines?apiKey=yourkey&country=us&category=technology&pageSize=10",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "country",
"value": "us"
},
{
"name": "pageSize",
"value": "10"
},
{
"name": "category",
"value": "technology"
}
]
},
"genericAuthType": "httpQueryAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "VHh5tyahYp2OlfDs",
"name": "Query Auth account"
}
},
"typeVersion": 4.1
},
{
"id": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"name": "Résumé d'actualité par IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
992,
48
],
"parameters": {
"text": "=You are a tech news writer. Based on the article provided, write an engaging blog post.\n\nReturn ONLY valid JSON in this exact format:\n{\n \"title\": \"Your catchy headline here\",\n \"content\": \"Full blog post content with proper formatting\"\n}\n\nArticle details:\n- Title: {{ $json.title }}\n- Description: {{ $json.description }}\n- Content: {{ $json.content }}\n- Source: {{ $json.source }}\n\nWrite a 600-800 word blog post expanding on this article.",
"options": {
"systemMessage": "You are a tech news curator. Create a compelling blog post that summarizes the top tech news stories. Format it with proper headings, bullet points, and include brief commentary on each story's significance. Make it engaging and informative for a general tech audience."
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "4006ddaa-e0ae-4b88-9ed8-bf83a7c6dce3",
"name": "Google Gemini Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
1072,
272
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "wNw45YZvXXpeocJ2",
"name": "TST API"
}
},
"typeVersion": 1
},
{
"id": "446986b0-41ee-43c0-bec0-58db6c6530c0",
"name": "Publier sur WordPress",
"type": "n8n-nodes-base.wordpress",
"position": [
1488,
48
],
"parameters": {
"title": "={{ $json.title }}",
"additionalFields": {
"tags": [
"technology",
"news",
"daily",
"automation"
],
"status": "publish",
"content": "={{ $json.content }}"
}
},
"typeVersion": 1
},
{
"id": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"name": "Boucle sur les éléments",
"type": "n8n-nodes-base.splitInBatches",
"position": [
768,
48
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "97aa2d40-ad65-4570-bcda-45d13c67c07f",
"name": "Titre et contenu",
"type": "n8n-nodes-base.code",
"position": [
1264,
48
],
"parameters": {
"jsCode": "const items = $input.all();\n\nreturn items.map(item => {\n // Remove markdown code blocks and parse JSON\n let aiOutput = item.json.output;\n \n // Remove ```json and ``` markers\n aiOutput = aiOutput.replace(/```json\\s*/, '').replace(/```\\s*$/, '');\n \n // Parse the cleaned JSON\n const parsedOutput = JSON.parse(aiOutput.trim());\n \n return {\n json: {\n title: parsedOutput.title,\n content: parsedOutput.content,\n originalTitle: item.json.title,\n source: item.json.source,\n url: item.json.url\n }\n };\n});"
},
"typeVersion": 2
},
{
"id": "ac0c85f6-d554-40c0-8cd2-a5869367cb5a",
"name": "Diviser les articles",
"type": "n8n-nodes-base.code",
"position": [
544,
48
],
"parameters": {
"jsCode": "// Split the articles array and clean up the data\nconst articles = $input.first().json.articles;\n\n// Filter out articles with null/missing content and limit to top 5\nconst validArticles = articles\n .filter(article => \n article.title && \n article.description && \n article.content && \n article.content !== \"[Removed]\"\n )\n .slice(0, 5); // Limit to 5 articles to avoid rate limits\n\n// Return each article as a separate item\nreturn validArticles.map(article => ({\n json: {\n title: article.title,\n description: article.description,\n content: article.content,\n url: article.url,\n urlToImage: article.urlToImage,\n publishedAt: article.publishedAt,\n source: article.source.name\n }\n}));"
},
"typeVersion": 2
}
],
"pinData": {},
"connections": {
"ac0c85f6-d554-40c0-8cd2-a5869367cb5a": {
"main": [
[
{
"node": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"type": "main",
"index": 0
}
]
]
},
"f002cec0-eee4-457e-9b81-81b1bc4cf8aa": {
"main": [
[
{
"node": "ac0c85f6-d554-40c0-8cd2-a5869367cb5a",
"type": "main",
"index": 0
}
]
]
},
"bc06c085-5fa9-495c-ad5c-0cfe0c0cd500": {
"main": [
[],
[
{
"node": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"type": "main",
"index": 0
}
]
]
},
"8f0b8ffe-e898-4d43-8b67-1ebe60c2e3a6": {
"main": [
[
{
"node": "f002cec0-eee4-457e-9b81-81b1bc4cf8aa",
"type": "main",
"index": 0
}
]
]
},
"97aa2d40-ad65-4570-bcda-45d13c67c07f": {
"main": [
[
{
"node": "446986b0-41ee-43c0-bec0-58db6c6530c0",
"type": "main",
"index": 0
}
]
]
},
"8a7b5502-fa7f-4a19-ba44-f0da9fb71f10": {
"main": [
[
{
"node": "97aa2d40-ad65-4570-bcda-45d13c67c07f",
"type": "main",
"index": 0
}
]
]
},
"446986b0-41ee-43c0-bec0-58db6c6530c0": {
"main": [
[
{
"node": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"type": "main",
"index": 0
}
]
]
},
"4006ddaa-e0ae-4b88-9ed8-bf83a7c6dce3": {
"ai_languageModel": [
[
{
"node": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}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 - Création de contenu, IA Multimodale
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
David Olusola
@dae221I help ambitious businesses eliminate operational bottlenecks and scale faster with AI automation. My clients typically see 40-60% efficiency gains within 90 days. Currently accepting 3 new projects this quarter - david@daexai.com
Partager ce workflow