Batch Web Scraping from Google Sheets to Google Docs using Firecrawl - n8n Workflow

Automate batch web scraping using this n8n workflow. Extract URLs from Google Sheets, scrape content with Firecrawl, and save structured markdown files to Google Drive/Docs for RAG knowledge bases.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?

AI chatbot developers needing to quickly populate a RAG knowledge base.
Content managers performing large-scale content audits or migrations.
Data analysts requiring structured content extraction from multiple web pages.
Users looking for reliable, high-utility n8n templates for data processing.

Overview

This robust automation addresses the challenge of bulk content acquisition for modern data needs, such as feeding a Retrieval Augmented Generation (RAG) system. The n8n workflow leverages the powerful Firecrawl service to extract clean, structured markdown from raw web pages.

By integrating with Google Sheets and Google Drive, the automation ensures a smooth, tracked process: you simply provide the Google Sheet URL via the n8n trigger, and the system handles the reading, filtering, scraping, storage, and progress tracking. This specific n8n workflow is designed for high efficiency and reliability, making it one of the most essential n8n templates for data operations.

How it Works

The entire process is initiated by a specific n8n trigger and executes sequentially:


  1. Initiation (n8n trigger): The 'When chat message received' n8n trigger starts the process, receiving the target Google Sheet URL as input.

  2. Data Retrieval: The 'Get URL' Google Sheets n8n node fetches all relevant rows from the sheet named 'Page to doc' using the input URL.

  3. Data Validation and Filtering: The 'Row not empty' filter ensures only rows containing a valid URL proceed. The subsequent 'If' n8n node checks if the URL has already been marked as 'Scrapé: OK', effectively skipping processed items to prevent duplicate work.

  4. Batch Processing: The 'Loop Over Items' n8n node iterates through the list of valid, unscraped URLs one by one.

  5. Scraping: The 'Scraping' Firecrawl n8n node visits the URL, extracts the web content, and converts it into structured markdown text.

  6. Storage: The 'Create file markdown scraping' Google Drive n8n node creates a new Google Doc in the configured folder, using the markdown content and naming the file after the source URL.

  7. Progress Tracking: The 'Scraped : OK' Google Sheets n8n node updates the source spreadsheet row, setting the 'Scrapé' column value to 'OK', providing real-time status updates.

  8. Completion Notification: After the entire batch is processed, the 'Respond to Webhook' n8n node sends a confirmation message with a link to the output folder.

Installation Guide

To deploy this powerful n8n workflow, follow these steps:


  1. Import the JSON: Copy the provided JSON data and import it directly into your n8n instance as a new n8n workflow.

  2. Google Sheets Setup: You must have a Google Sheets document with a sheet named 'Page to doc' containing a column labeled 'URL' and another labeled 'Scrapé'.

  3. Credentials Setup: Configure the required credentials:

Firecrawl API: Needed for the 'Scraping' n8n node to perform web content extraction.
Google Sheets OAuth2: Required for the 'Get URL' and 'Scraped : OK' n8n nodes for reading and updating sheet data.
* Google Drive OAuth2: Required for the 'Create file markdown scraping' n8n node to create documents.

  1. Configure Google Drive Folder: In the 'Create file markdown scraping' n8n node, update the folderId parameter to point to your desired Google Drive destination folder where the scraped documents will be stored. The current ID is set to 1ry3xvQ9UqM2Rf9C4-AoJdg1lfB9inh_5 (Contenu scrapé).

  2. Activate: Save and activate the n8n workflow. Trigger the execution by providing the Google Sheets URL to the active webhook endpoint or chat interface.

Node Details

When chat message received (n8n trigger): This specific n8n trigger initiates the entire process upon receiving a chat input, expecting the Google Sheets URL.
Get URL (Google Sheets n8n node): Reads data dynamically by mapping the incoming chatInput (the sheet URL) to the Document ID. Reads from the sheet 'Page to doc'.
Row not empty (Filter n8n node): Ensures data integrity by filtering out any rows where the URL field is null or empty.
If (Core Logic n8n node): Provides conditional flow control, checking if the scraped status column is empty, allowing the n8n workflow to skip already completed URLs.
Loop Over Items (n8n node): Manages the batch flow, iterating sequentially through the filtered list of URLs.
Scraping (Firecrawl n8n node): Executes the crucial web scraping operation, specifically configured to output the extracted content as clean markdown format.
Create file markdown scraping (Google Drive n8n node): Creates a file using the createFromText operation. It uses the URL as the file name and the markdown output from the Firecrawl n8n node as the file content.
Scraped : OK (Google Sheets n8n node): A critical progress tracking n8n node. It updates the source sheet using the update operation, marking the corresponding URL row with 'OK' in the 'Scrapé' column.

Related n8n Workflows

Free

Nodes: 9 Nodes
Updated: December 26 2025
View all
Created by

Featured*