Extraction d'images intégrées dans les documents Google Drive

Intermédiaire

Ceci est uncontenant 11 nœuds.Utilise principalement des nœuds comme Webhook, SplitOut, GoogleDrive, HttpRequest, VlmRun. Extraire des images intégrées à partir de documents Google Drive avec VLM Run Agent

Prérequis
  • Point de terminaison HTTP Webhook (généré automatiquement par n8n)
  • Informations d'identification Google Drive API
  • Peut nécessiter les informations d'identification d'authentification de l'API cible

Catégorie

-
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
{
  "meta": {
    "instanceId": "96d35e452e0d9a182973416b7532cfc5643239aaaa764a5bf74d52ca84f4a35c",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "7af41587-fbd1-4ff4-9ccb-55fe5aaf9305",
      "name": "Télécharger le fichier",
      "type": "n8n-nodes-base.googleDrive",
      "notes": "Downloads receipt files from Google Drive for AI processing.",
      "position": [
        -784,
        768
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {
          "binaryPropertyName": "data"
        },
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "zYyIOFMdGz258avn",
          "name": "Google Drive account 6"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "c5fe1983-8614-4ab9-862e-315c2e5aecaa",
      "name": "Extraire les images",
      "type": "@vlm-run/n8n-nodes-vlmrun.vlmRun",
      "position": [
        -560,
        800
      ],
      "parameters": {
        "operation": "executeAgent",
        "agentPrompt": "You are expert in extracting images from a document, complete the task accordingly so that urls can be extracted using json.body.response.extracted_images",
        "agentCallbackUrl": "https://playground.attensys.ai/webhook/image-extract-via-agent"
      },
      "credentials": {
        "vlmRunApi": {
          "id": "B7ZYM8AfBgjnOEOl",
          "name": "VLM Run account 5"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "fda11e43-0198-45e6-b26a-ae289e1b6bc4",
      "name": "Télécharger l'image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -64,
        880
      ],
      "parameters": {
        "url": "={{ $json['body.response.extracted_images'] }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "0af9ff16-c3d3-4f6d-912c-de0b6efa7cec",
      "name": "Sauvegarder l'image",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        64,
        880
      ],
      "parameters": {
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "1XD17_AMlTFIWCyhQjvbQnuGd7jkn91A-",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1XD17_AMlTFIWCyhQjvbQnuGd7jkn91A-",
          "cachedResultName": "Extracted Image"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "zYyIOFMdGz258avn",
          "name": "Google Drive account 6"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "2cc88f73-15fb-4e54-817e-808335e5e59e",
      "name": "Diviser",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -192,
        880
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "body.response.extracted_images"
      },
      "typeVersion": 1
    },
    {
      "id": "da008962-c360-477b-98e4-1c327255092f",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -224,
        416
      ],
      "parameters": {
        "color": 7,
        "width": 400,
        "height": 608,
        "content": "## 🟣 **Split, Download, Save**\n\n* ✂️ **Split Out** node iterates each link from `body.response.extracted_images`\n\nFor example- \n```json\n{\n  \"image_urls\": [\n    \"https://vlm.run/api/files/img1.jpg\",\n    \"https://vlm.run/api/files/img2.jpg\"\n  ]\n}\n```\n\n\n* ⬇️ **HTTP Request** downloads each image as a file\n\n* 💾 **Google Drive** node saves each image to the **Extracted Image** folder\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ead01399-4c0a-47f6-8e1d-92a35a3a5c57",
      "name": "Note adhésive1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -608,
        416
      ],
      "parameters": {
        "width": 368,
        "height": 608,
        "content": "## 🟡 **Extract Images via VLM Run – Setup Guide**\n\n1. Set up an n8n Webhook node and copy its Production URL \n\n2. Configure a VLM Run agent with the image extraction prompt \n\n3. Paste the n8n URL into VLM Run’s Callback URL field \n\n4. Run the job on your document \n\n5. Receive extracted image URLs in n8n for processing.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "057cd13b-cd00-41b3-b5fb-2ff33a6a4fed",
      "name": "Note adhésive2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1008,
        416
      ],
      "parameters": {
        "color": 7,
        "width": 384,
        "height": 608,
        "content": "## 🟢 Monitor & Download\n\n* ⏱️ Google Drive Trigger checks the target folder every minute for **fileCreated** events\n\n* 🗂️ Trigger scope: the receipts folder you selected\n\n* 🔗 Passes the new file’s **id** to the next node\n\n* ⬇️ Google Drive node downloads the file as binary under **data**\n\n* 📦 Output: the binary file is ready for processing in the next step"
      },
      "typeVersion": 1
    },
    {
      "id": "1fd80fe7-abf0-42a3-9755-29f9bef894f7",
      "name": "Recevoir les liens d'images",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -384,
        800
      ],
      "webhookId": "3f24a439-fa54-40c2-ab55-4488d5398469",
      "parameters": {
        "path": "image-extract-via-agent",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2.1
    },
    {
      "id": "090c3b8d-eeb3-4b4a-bf49-47040a942590",
      "name": "Note adhésive4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -928,
        80
      ],
      "parameters": {
        "color": 7,
        "width": 992,
        "height": 320,
        "content": "## 🧾 Image Extraction Pipeline\n\n**Flow:** Google Drive upload → VLM Run extracts images → posts to n8n webhook → images split, downloaded, and saved to target Drive folder.\n\n**Use cases:** Receipts from PDFs, report images, ML-ready assets.\n\n**Requirements:**\n* VLM Run API credentials with access to Execute Agent\n\n* Google Drive OAuth2 for trigger, download, and save\n\n* n8n Webhook URL reachable at `image-extract-via-agent` (or other desired endpoint)\n\n* Proper folder IDs for the source watch folder and the destination folder\n"
      },
      "typeVersion": 1
    },
    {
      "id": "c6b9a501-f300-48f5-8441-0ea6934ffa56",
      "name": "Surveiller les téléversements",
      "type": "n8n-nodes-base.googleDriveTrigger",
      "notes": "Monitors Google Drive folder for new receipt uploads and triggers processing automatically.",
      "position": [
        -960,
        768
      ],
      "parameters": {
        "event": "fileCreated",
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "triggerOn": "specificFolder",
        "folderToWatch": {
          "__rl": true,
          "mode": "list",
          "value": "1S6baavqJn98MjUlbB6KtmARCWuWEekIZ",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1S6baavqJn98MjUlbB6KtmARCWuWEekIZ",
          "cachedResultName": "test_data"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "ZP9gjk9tgUdUxlxp",
          "name": "Google Drive account 6"
        }
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "2cc88f73-15fb-4e54-817e-808335e5e59e": {
      "main": [
        [
          {
            "node": "fda11e43-0198-45e6-b26a-ae289e1b6bc4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7af41587-fbd1-4ff4-9ccb-55fe5aaf9305": {
      "main": [
        [
          {
            "node": "c5fe1983-8614-4ab9-862e-315c2e5aecaa",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fda11e43-0198-45e6-b26a-ae289e1b6bc4": {
      "main": [
        [
          {
            "node": "0af9ff16-c3d3-4f6d-912c-de0b6efa7cec",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c6b9a501-f300-48f5-8441-0ea6934ffa56": {
      "main": [
        [
          {
            "node": "7af41587-fbd1-4ff4-9ccb-55fe5aaf9305",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1fd80fe7-abf0-42a3-9755-29f9bef894f7": {
      "main": [
        [
          {
            "node": "2cc88f73-15fb-4e54-817e-808335e5e59e",
            "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

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

Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds11
Catégorie-
Types de nœuds7
Description de la difficulté

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

Auteur
Shahrear

Shahrear

@shahrear

I’m Shahrear, a Software Engineer with over 5 years of experience in full-stack development and workflow automation. I specialize in building intelligent automations using n8n, helping teams streamline operations and boost productivity. I’m also an expert in developing custom n8n nodes, with published work on npm - including the @vlm-run/n8n-nodes-vlmrun package. Linkedin - https://www.linkedin.com/in/shahrear-amin/ Email - shahrearbinamin33@gmail.com

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34