Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a batch of web-page screenshots on a Raspberry Pi, run Chromium headless once per URL with --screenshot, set the viewport with --window-size, and save each run under a different filename. Chromium’s default output is screenshot.png in the current working directory, so a loop that does not move or isolate that file will overwrite earlier captures.

Capture one page first

  1. Find the Chromium command installed on your Pi. The command name varies by Linux installation. Chromium’s switch guidance uses chromium-browser as an example, but do not assume that name is present on every Raspberry Pi OS setup. Check the executable available on your system and confirm its version. In Chrome, chrome://version displays the complete effective command line; the Linux executable or package on a Pi may differ. See Chromium command-line switches.
  2. Run a single capture. Replace chromium with your installed command and the example URL with the page you want:
    chromium --headless --screenshot --window-size=1280,1696 https://example.com
    This saves screenshot.png in the command’s current working directory. The viewport dimensions are examples; choose dimensions that suit the page and the output you need. Chromium documents these options in its headless Chrome guide.
  3. Open the image and check it. Verify that the page loaded, the dimensions are suitable, and any content that appears after initial rendering is present before scaling up to a large list.

Batch URLs without overwriting screenshots

Put one URL per line in urls.txt, then run Chromium once for each line. Because every invocation writes the default screenshot.png to its current directory, move or rename that file after every capture, or give each invocation its own working directory.

mkdir -p captures
while IFS= read -r url; do
  chromium --headless --screenshot --window-size=1280,1696 --timeout=5000 "$url"
  # Move screenshot.png to a unique, sanitized filename here before the next iteration.
done < urls.txt

This is a shell pattern, not a tested Raspberry Pi script. The comment marks the essential missing step: replace it with a command that moves the output to a unique name before the next run. For example, a naming scheme can use a sanitized hostname plus a counter. Do not use an untrusted URL directly as a filename; URLs can contain characters that are invalid or inconvenient in file paths. Check that the command is the installed Chromium binary and that it accepts the switches shown.

For a simpler collision-proof arrangement, create a separate output directory for each URL and launch Chromium with that directory as its working directory. Keep a mapping between each URL and its resulting image so that captures remain identifiable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
  • Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM)
  • Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
  • CanaKit Turbine Black Case for the Raspberry Pi 5
  • CanaKit Low Noise Bearing System Fan
  • Mega Heat Sink - Black Anodized

Control viewport and page readiness

Choose the viewport

--window-size=1280,1696 sets the browser viewport used for rendering. Adjust its width and height for the page layout you are trying to capture. A screenshot’s viewport is not a promise that every page element has loaded or that the resulting image represents the entire document; inspect sample output for the target pages.

Use a timeout carefully

--timeout=5000 sets a maximum wait of 5,000 milliseconds in Chromium’s documented example. It can give a page time to render, but it does not establish that a site’s delayed, animated, or asynchronous content is ready. Test representative pages, inspect the images, and increase or otherwise adjust the wait if required. Longer waits also make a batch take longer.

Rank #2
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
  • Includes Raspberry Pi 5 16GB with 2.4Ghz 64-bit quad-core CPU (16GB RAM)
  • Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
  • CanaKit Turbine Black Case for the Raspberry Pi 5
  • CanaKit Low Noise Bearing System Fan
  • Mega Heat Sink - Black Anodized

Check Chromium’s headless mode on your installed build

Use --headless for the current headless approach described in Chromium’s documentation. The Chromium Headless README says that, as of M132, the old Headless shell functionality is no longer part of the Chrome binary, so --headless=old has no effect; users needing the old implementation are directed to chrome-headless-shell. Raspberry Pi packages can differ from or lag Chrome releases, so verify which binary and options your installed version supports rather than copying a command intended for another build. See the Chromium Headless README.

Web-page images or a screenshot of the Pi desktop?

Approach What it captures Display/session Batch use
Chromium headless with --screenshot A rendered web page at the chosen browser viewport Headless browser operation; no visible browser window is needed Can be invoked repeatedly for a URL list, with distinct output paths to prevent overwriting
Scrot The visible desktop screen Captures the screen state in a desktop session Useful when the target is the Pi’s displayed desktop rather than an individual rendered page

Scrot is described as a Raspberry Pi desktop screenshot option by Raspberry Pi Official Magazine. It solves a different problem from Chromium’s page rendering.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
CanaKit Raspberry Pi 5 Essentials Starter Kit (4GB RAM)
  • CanaKit Raspberry Pi 5 Essentials Starter Kit

Troubleshoot common batch problems

  • Every image is the same page or only the last capture remains: the default filename was reused in one directory. Move or rename screenshot.png after each run, or use a separate working directory per URL.
  • “Command not found” or an unknown-switch error: confirm the executable name and version on the Pi, then check that build’s supported switches. Linux command names vary, and Chromium notes that switches can change or be removed.
  • The image is missing late-loading content: the timeout may have elapsed before that content appeared. Try a representative URL with a longer wait and inspect the output; the timeout is a maximum wait, not a page-specific readiness guarantee.
  • The image is the wrong size or layout: adjust the width and height in --window-size, then capture again and check the resulting image.
  • You captured a web page but needed the desktop: Chromium headless renders a page, not the visible Pi screen. Use a desktop screenshot utility such as Scrot for that separate task.

Plan batch size, storage, and runtime from a sample

The available documentation does not establish a Raspberry Pi-specific capture speed, recommended batch size, memory requirement, or performance benchmark. Runtime will depend on the pages and the waits you configure, so capture a representative sample on the actual Pi before scheduling a large run. Check image dimensions, whether the content is ready, how much storage the files use, and whether the output naming scheme stays unique. A microSD card is simply one possible place to store local captures; no particular capacity or speed class is established here.

Or skip the browser setup

ScreenshotNeo offers a one-request alternative for URL-based captures. Its service accepts a URL and can return an image or PDF. For example, this cURL command requests a WebP screenshot:

Rank #4
SANOOV Raspberry Pi 5 4GB Kit, 4GB RAM Single Board Computer with Active Cooler and ABS Case, Complete Raspberry Pi 5 Starter Kit for IoT Robotics Retro Gaming
  • All-in-One Complete Kit: This SANOOV RPi 5 bundle comes with Raspberry Pi 5 4GB RAM single board, active cooler, durable ABS case and screwdriver. No extra parts needed, ready to use right out of the box for beginners and hobbyists
  • Powerful Single Board Computer: Equipped with 4GB RAM and high-performance processor, delivers fast running speed for 4K playback, AI projects, programming and daily computing tasks. SANOOV for raspberry pi 5 4GB is equipped with broadcom 64 quad-core Arm Cortex A76 processor with gigabit ethernet and upgraded with IEEE 802.11ac Wi-Fi, Bluetooth 5.0 dual-band 2.4Ghz and 5Ghz and Power Over Ethernet (POE). Upgrading delivers 2-3 x speed vs Pi 4, redefining the experience
  • Efficient Active Cooler: Effectively lowers operating temperature and prevents performance throttling. Runs quietly even under long-time heavy load, ensures stable operation all day long. SANOOV RPi 5 4GB kit offer an active cooler, which combines an aluminium heatsink with a high-performance PWM fan. Active cooler is fully compatible with the Pi OS, which can effectively reduce the temperature of RPi5 and ensure its good performance during long-term high load operation
  • Sturdy ABS Protective Case: Well-fitted for Raspberry Pi 5 board, can be secured with 4 screws to effectively protect the Pi 5 motherboard from damage, reserves full access to all ports and buttons. SANOOV uses ABS material to produce the case, which has a softer texture and feel. Meanwhile, SANOOV case adopts a layered design for easy disassembly and installation. (Tip: The Case cannot install M.2 HAT Add on Board and Solid State Drive!)
  • Wide Application & Full Compatibility: Seamlessly compatible with official OS and mainstream peripheral accessories for Raspberry Pi 5. Whether you are a beginner, student, electronics hobbyist or professional developer, this all-in-one kit meets your diverse needs. It excels in IoT projects, robotics design, retro gaming devices, home media servers and other DIY creations. Backed by a large global community, you can easily find guides, technical support and shared projects online
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com -o shot.webp

See the ScreenshotNeo API documentation for setup and options. ScreenshotNeo removes cookie/consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, and failed loads are not billed; and its MCP server lets AI agents take screenshots. The free plan includes 1,000 shots per month with no card, and paid plans start at $5 for 3,000 shots. Learn about ScreenshotNeo, then sign up for 1,000 free screenshots a month with no card.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Frequently Asked Questions

Can a Raspberry Pi batch capture use a different image name for every URL?

Yes. Move or rename the default screenshot.png after each run, or run captures in separate working directories.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Does Chromium’s screenshot timeout guarantee that all page content is ready?

No. It sets a maximum wait; delayed or asynchronous content may still need page-specific testing.

Quick Recap

Bestseller No. 1
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM); CanaKit Turbine Black Case for the Raspberry Pi 5
$259.95
Bestseller No. 2
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
Includes Raspberry Pi 5 16GB with 2.4Ghz 64-bit quad-core CPU (16GB RAM); CanaKit Turbine Black Case for the Raspberry Pi 5
$419.99
Bestseller No. 3
CanaKit Raspberry Pi 5 Essentials Starter Kit (4GB RAM)
CanaKit Raspberry Pi 5 Essentials Starter Kit (4GB RAM)
CanaKit Raspberry Pi 5 Essentials Starter Kit
$189.99
Best Value
RasTech Raspberry Pi 5 8GB Kit with Active Cooler and Pi5 Case
  • 【What you Get】You will get 1*Pi 5 8GB Single Board,1*RasTech Case,1*Active Cooler,1*Screwdriver,1*Installation instructions,12-month free warranty, lifetime service, 24-hour prompt and friendly response.
  • 【More Connectors】There are two USB 3.0 ports(5Gbps simultaneously) and two USB 2.0 ports, which triple total bandwidth ,support any combination of up to two cameras or displays. Peak SD card performance is doubled through support for the SDR104 high-speed mode. It provides a smooth desktop experience for you. Offer Gigabit Ethernet and a PCIe interface, along with dual-band Wi-Fi and Bluetooth 5.0/BLE wireless capability. The RasTech Pi 5 Kit use the new 27W 5.1V 5A USB-C power connector.
  • 【 Support Dual 4Kp60 Display 】Each of the two microHDMI sockets can control a 4K display at 60 Hertz, now support HDR, offering super HD video for media streaming projects. RPi 5 is the first RPi model that comes with a PCI Express port (PCIe 2.0 x1 with 500 MB/s) to attach SSDs (requires separate M.2 HAT).
  • 【 Excellent Chips And Applications】Pi 5 is a full-size Pi computer using silicon built in-house at Pi. The RP1 “southbridge” provides the bulk of the I/O capabilities for Pi 5. Pi 5 is more friendly and convenient in the development of Internet of Things, Web development, machine identification, automatic control and other electronic equipment applications and network.
  • 【 Faster CPU, Better GPU 】 Pi 5 features a Broadcom BCM2712 64-bit quad-core Arm Cortex-A76 processor running at 2.4GHz, it delivers a 2–3× increase in CPU performance relative to RaspberryPi 4. The 800MHz VideoCore VII GPU is compatible to OpenGL ES 3.1 and Vulkan 1.2, substantial uplift in graphics performance. Pi 5 Offers lightning-fast CPU speed, a PCI Express interface, a Real Time Clock (RTC) and a power button and runs significantly cooler than Pi 4.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.