ScreenshotNeo

BlogHow-to

How to Take Multiple Screenshots at Once

Learn the fastest way to capture several screenshots, full webpages, or repeatable batches on Windows, macOS, Edge, and the command line.

By the ScreenshotNeo team1 October 20267 min read

“Multiple screenshots at once” can mean three different jobs:

  • Several separate captures: repeated regions, windows, or screens during one session.
  • One long capture: an entire webpage that extends below the viewport.
  • A repeatable batch: screenshots from many URLs, devices, or page states.

Choose the matching workflow below. Windows Snipping Tool is quickest for manual captures, macOS Screenshot is built in, Microsoft Edge can capture a full page, and shot-scraper is suited to repeatable command-line batches.

Choose the right screenshot workflow

Goal Best method Output
Several regions or windows Windows Snipping Tool Clipboard, saved image, or shared capture
Several captures on a Mac macOS Screenshot Files saved to the desktop by default
One page taller than the screen Microsoft Edge Capture full page One long webpage image
Many URLs or repeatable states shot-scraper YAML Named files in a scriptable batch
API-driven capture from an application ScreenshotNeo PNG, JPEG, WebP, or PDF response

Take several separate screenshots on Windows

  1. Arrange the first target on screen.
  2. Press Windows+Shift+S to open the capture overlay.
  3. Choose Rectangle, Freeform, Window, or Full screen.
  4. Select the target. The capture is copied to the clipboard and appears in Snipping Tool, where you can save or share it.
  5. Repeat for each target. Press Alt+N to create another snip in the same mode.

Capture a delayed state

Use a delay when a menu, tooltip, or other temporary state must open before the screenshot. Press Alt+D, then choose a delay from 1 to 5 seconds. Open the state during the countdown and complete the snip.

Keep a manual batch organized

  • Use a consistent naming pattern such as page-01.png, page-02.png.
  • Save each capture immediately if you need to preserve the sequence.
  • Use Window mode for application comparisons so browser chrome and neighboring windows do not enter the image.
  • Use Full screen only when the complete desktop is the intended subject.

Take several screenshots on macOS

macOS Mojave 10.14 and later include the built-in Screenshot app. Open it from Applications > Utilities or with Shift+Command+5, then choose a full screen, window, or selected portion capture.

By default, screenshots are saved to the desktop with date-and-time filenames such as “Screen Shot [date] at [time]”. Capture each target, then sort the files by name or creation time. If you need a sequence, rename the files after the session or move them into a dedicated folder.

Capture one long webpage in Microsoft Edge

  1. Open the page in Edge and wait for the content you need to appear.
  2. Press Ctrl+Shift+S.
  3. Select Capture full page.
  4. Review the resulting long image, then save or copy it.

This is the efficient choice when “multiple screenshots” really means content below the visible viewport. Edge captures the page without manual scrolling. The feature name and availability can vary by device, market, and browser version.

When full-page capture is not reliable

  • Lazy-loaded sections may not exist until you scroll or interact with them.
  • Infinite-scroll pages may have no stable end.
  • Fixed headers can repeat or overlap content in a long image.
  • Animations and rapidly changing ads can produce inconsistent frames.

For a stable result, wait for the page to finish loading, scroll through important lazy sections first, and disable motion where the site allows it.

Batch screenshots with shot-scraper

Use shot-scraper when the same capture must be repeated across many URLs or on a schedule. Its YAML configuration describes multiple screenshots. The exact options depend on the installed version; the examples below follow the documented 0.14.2 syntax, so check your installed version before adapting them.

1. Install and verify

pip install shot-scraper
shot-scraper --version

2. Create a YAML batch

screenshots:
  - url: https://example.com
    output: captures/example-home.png
  - url: https://example.com/pricing
    output: captures/example-pricing.png
  - url: https://example.org
    output: captures/example-org.png

3. Run the batch

shot-scraper multi captures.yml

Use --no-clobber to skip files that already exist, which makes reruns safer:

shot-scraper multi captures.yml --no-clobber

Add --retina when you need higher-density output:

shot-scraper multi captures.yml --retina

Batch design checklist

  • Give every URL a unique output filename.
  • Create the output directory before running in automation.
  • Use --no-clobber for incremental jobs.
  • Record the URL, viewport, timestamp, and tool version beside the files when captures are used as evidence.
  • Retry only transient failures; investigate authentication, robots, and bot-check pages instead of retrying forever.

Capture many URLs through an API

For application code, an API avoids maintaining a browser installation, viewport process, and queue yourself. ScreenshotNeo accepts one GET request with a URL and returns PNG, JPEG, WebP, or PDF. Its options cover full-page capture, element selectors, device presets, custom viewports, retina scale, waiting, cookies, headers, JavaScript, hiding selectors, blocking resources, caching, asynchronous jobs, bulk capture, and signed webhooks. See the ScreenshotNeo documentation for parameter details.

cURL

curl -G "https://api.screenshotneo.com/v1/shot" \
  -d access_key=YOUR_API_KEY \
  --data-urlencode url=https://stripe.com \
  -o shot.webp

Python

import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
    timeout=90,
)
r.raise_for_status()
open("shot.webp", "wb").write(r.content)

Node.js

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot failed: ${res.status}`);
const data = Buffer.from(await res.arrayBuffer());
await import('node:fs/promises').then(fs => fs.writeFile('shot.webp', data));

Useful options for a multi-page batch

Need ScreenshotNeo capability
Long pages Full-page capture with lazy images loaded
One component Capture an element by CSS selector
Consistent visuals Dark mode, 12 device presets, any viewport, retina scale, timezone, and geolocation
Dynamic apps Wait for a selector, delay, or network idle; run custom JavaScript or click an element
Private pages Custom headers, cookies, user agent, and Authorization
Noise removal Hide selectors and block ads, trackers, requests, or resource types
Repeat runs Choose a cache TTL; use signed links for public image tags
Large batches Bulk capture supports up to 100 URLs per call; asynchronous jobs support signed webhooks
Documents PDF paper size, margins, landscape mode, and page ranges

Or skip the browser setup

ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before the shot. Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed, and response headers identify the page verdict and whether the shot was billed. An MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. The Free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000 shots. Every feature is available on every plan. Create a free ScreenshotNeo account.

Troubleshooting

The screenshot is blank

Cause: the page failed to load, requires authentication, or is blocked by a bot check. Fix: verify the URL, provide required cookies or headers, wait for a selector or network idle, and inspect the response verdict. With ScreenshotNeo, blank pages and failed loads are identified in the response and are not billed.

Only the visible viewport was captured

Cause: a region or viewport mode was selected. Fix: use Edge’s Capture full page, shot-scraper’s full-page configuration, or ScreenshotNeo full-page capture.

Lazy images are missing

Cause: images load only after scrolling or an intersection event. Fix: scroll the page before a manual capture, wait for the relevant selector, or use a capture service that loads lazy images during full-page capture.

Cause: the overlay appeared after navigation. Fix: dismiss it manually, hide its selector, or use ScreenshotNeo’s consent and cleanup steps.

Batch files were overwritten

Cause: output names were reused. Fix: include a page or run identifier in each filename and use shot-scraper’s --no-clobber.

Captures differ between runs

Cause: animations, ads, time zones, responsive breakpoints, or changing data. Fix: set a fixed viewport and timezone, wait for a stable selector, hide animated elements, block unnecessary requests, and use a cache TTL where appropriate.

Performance, reliability, and cost

  • Manual tools: fastest for a handful of one-off images, but they depend on the current desktop state and are difficult to reproduce.
  • Edge full page: convenient for one long page, but browser availability and page behavior can vary.
  • shot-scraper: repeatable and scriptable; runtime grows with URL count and page load time, so use no-clobber runs and bounded retries.
  • ScreenshotNeo: use bulk capture for up to 100 URLs, asynchronous jobs and signed webhooks for longer batches, and caching with a TTL for repeated URLs. Only clean shots are billed; bot checks, blank pages, timeouts, failed loads, and cache hits cost nothing.

For predictable spend, set explicit output formats and viewports, cache stable pages, avoid unnecessary retries, and read the X-Page-Verdict and X-Billed headers in your job logs.

FAQ

Can I take several screenshots with one keyboard shortcut?

On Windows, Windows+Shift+S opens Snipping Tool and Alt+N repeats the current snip mode. macOS Screenshot can capture repeated targets, but each capture is a separate action.

What is the difference between multiple screenshots and a full-page screenshot?

Multiple screenshots are separate files or captures. A full-page screenshot is one image containing content beyond the visible viewport.

Which method is best for nightly website monitoring?

Use a scripted batch such as shot-scraper or an API workflow. Store deterministic filenames, wait for stable selectors, and record failures separately from successful images.

Can screenshots include authenticated pages?

Yes, when the tool supports the required session. ScreenshotNeo accepts custom cookies, headers, user agents, and Authorization values.

How many URLs can ScreenshotNeo capture in one bulk call?

Bulk capture supports up to 100 URLs per call. Asynchronous jobs and signed webhooks are available for longer-running work.