Website Screenshot Scraper: Full Page, Bulk
Pricing
from $4.00 / 1,000 screenshots
Website Screenshot Scraper: Full Page, Bulk
Capture up to 500 URLs per run as full-page screenshots with lazy-loaded images rendered and cookie banners hidden, not clicked. Desktop, mobile and tablet presets, retina, JPEG or PNG, plus free page title, meta description, visible text and rendered HTML. Failed pages are reported and cost $0.
Pricing
from $4.00 / 1,000 screenshots
Rating
0.0
(0)
Developer
Automation Craft
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
8 days ago
Last modified
Categories
Share
Website Screenshot Scraper: Full Page, Bulk
Batch website screenshots that actually come out right. Feed this website screenshot scraper a list of URLs and get back full-page captures with lazy-loaded content rendered and cookie banners hidden, plus the page's title and metadata, in seconds per page rather than minutes.
You only pay for screenshots that succeed. Pages that fail to load cost you nothing, ever.
Quick start
- Paste your URLs into
urls, up to 500 per run. Duplicates are removed for you. - Pick the device preset and format: desktop, mobile or tablet, JPEG or PNG, retina on or off.
- Press Start. Each image is stored with a direct download link, and every URL gets a dataset row with its metadata and timings.
Run with empty input {} for a live demo (a full-page shot of apify.com).
What you get per URL
- The screenshot file (JPEG or PNG) stored with a direct download link in
screenshotUrl. - A dataset row: page title, meta description, og:image, canonical URL, language (free), HTTP status, final URL after redirects, image dimensions, the page's real full height, and capture timings.
- Optional free extras: the page's visible text and the fully rendered HTML as a linked file, handy when the screenshot is part of a scraping or monitoring pipeline.
{"type": "screenshot","url": "https://www.theguardian.com/uk","status": "ok","httpStatus": 200,"screenshotUrl": "https://api.apify.com/v2/key-value-stores/…/records/screenshot-001-www.theguardian.com-uk.jpg","format": "jpeg","width": 1280,"height": 15000,"fullPage": true,"truncated": true,"fullPageHeight": 24832,"device": "desktop","title": "Latest news, sport and opinion from the Guardian","metaDescription": "…","timings": { "navigationMs": 5120, "screenshotMs": 2223 }}
Why this one
Screenshot tools mostly fail the same four ways. This Actor was built specifically against each:
| Common complaint | What this Actor does |
|---|---|
| "Full-page" shots are really just the first screen | Real full-page capture: it step-scrolls the page so lazy-loaded images render, releases consent-manager scroll-locks that trick other tools into 800px "full pages", then captures the true height (tested on pages over 70,000px) |
| Slow, minutes per screenshot | Seconds per page; one shared browser, up to 5 pages in parallel |
| Charged even when it fails | Failed or unreachable pages are $0 and reported with the exact error |
| Cookie popups all over the shot | More than 40 consent managers (OneTrust, Cookiebot, Didomi, Sourcepoint, Usercentrics and others) hidden by default. Nothing is clicked, they are just not in your image |
Options
- Devices: desktop (any viewport 320 to 3840px wide), mobile (iPhone 390x844 with touch and a mobile user agent), tablet (iPad 820x1180). A retina 2x toggle gives crisp print-quality images.
- Formats: JPEG (with quality control) or PNG (lossless, and it supports pages taller than JPEG's 65,000px format limit).
- Timing: extra delay, wait-for-selector, per-page timeout.
- Cleanup: hide any elements by CSS selector (chat widgets, sticky bars, ads) on top of the built-in cookie-banner hiding.
- Height cap:
maxPageHeight(default 20,000px) stops endless feeds; the item tells you the page's real height and that it was truncated. - Batching: up to 500 URLs per run, concurrency 1 to 5, duplicates deduped.
How much does it cost to screenshot a website?
You pay per successfully captured screenshot, any size, any device, full page or viewport. Metadata, visible text and rendered HTML extras are free. Apify Store tiers take 10% off (Silver) or 20% off (Gold) the screenshot price; the Actor start event is the same for everyone.
| Event | Free and Bronze | Silver (10% off) | Gold (20% off) |
|---|---|---|---|
| Actor Start | $0.0025 | $0.0025 | $0.0025 |
| Screenshot | $0.005 | $0.0045 | $0.004 |
- 100 screenshots in one run cost $0.0025 plus $0.50, so $0.5025 at the Free and Bronze price.
- $0 for failures: unreachable domains, timeouts, rejected URLs. Each failure is itemized with its reason.
- A page that loads with an error HTTP status (a 404 page, say) is captured and charged. You asked for that URL and you get exactly what it looks like, with
httpStatusrecorded so you can filter.
Input
| Field | Type | Default | Notes |
|---|---|---|---|
urls | array | URLs to capture, up to 500 per run, duplicates removed | |
fullPage | boolean | true | Capture the whole page rather than just the viewport |
device | string | desktop | desktop, mobile or tablet preset |
viewportWidth / viewportHeight | integer | 1280 / 800 | Desktop viewport in pixels |
retina | boolean | false | 2x pixel density for print-quality images |
format / quality | string, integer | jpeg / 80 | JPEG with quality control, or lossless PNG |
maxPageHeight | integer | 20000 | Height cap in pixels; the item reports the real height and truncated |
dismissCookieBanners | boolean | true | Hide consent banners without clicking them |
hideSelectors | array | Extra CSS selectors to hide, for chat widgets or sticky bars | |
delayMs / waitForSelector / timeoutSecs | integer, string, integer | 0 / / 60 | Timing controls per page |
scrollToLoad | boolean | true | Step-scroll so lazy-loaded images render |
capturePageData / captureText / captureHtml | boolean | true / false / false | Free metadata, visible text and rendered HTML |
concurrency | integer | 3 | Pages captured in parallel, 1 to 5 |
Use cases
- Monitoring and archiving: nightly captures of your pages, competitors, or a client portfolio. Pair the screenshot with the free HTML capture for a complete record.
- Link previews and thumbnails: generate og-image-style previews for URL lists.
- Compliance and evidence: timestamped captures of pages as they appeared, with HTTP status and final URL recorded.
- QA: mobile, tablet and desktop renders of the same URL in one run.
- AI pipelines: screenshots plus page text in one call, ready for vision models.
✅ What this Actor CAN do
- True full-page screenshots including lazy-loaded content, at up to 100,000px page height (PNG).
- Hide cookie banners on sites using all major consent platforms, without interacting with them.
- Desktop, mobile and tablet presets, retina scaling, JPEG or PNG output.
- Capture pages behind public URLs, including redirects (the final URL is reported).
- Free page metadata, visible text and rendered HTML alongside every shot.
❌ What this Actor CANNOT do
- Pages behind a login. There is no cookie or session support in this version.
- Accept or reject cookie dialogs on your behalf. Banners are hidden, not clicked, so consent state is never changed.
- PDF export. Image formats only.
- Video or animated capture. One still image per URL.
- Private and internal hosts (localhost, RFC-1918 IPs) are rejected by design.
- A few app-like sites (some SPAs, and sites that gate content behind a login or consent wall for datacenter visitors) render inside an internal scroller and report only one screen of height. Those come out as sharp above-the-fold shots rather than full-page ones, and the item's
fullPageHeightalways tells you what was measured.
Failed pages are retried once on a fresh browser context before being reported (free) with the exact error.
FAQ
How do I take a full-page screenshot that includes lazy-loaded images?
Leave fullPage and scrollToLoad on, which is the default. The Actor step-scrolls the page so lazy-loaded images actually render, releases the consent-manager scroll-locks that trick other tools into 800px "full pages", then captures the true measured height. Raise maxPageHeight if you need more than the default 20,000px; PNG handles pages up to 100,000px.
How do I remove cookie banners from a website screenshot?
dismissCookieBanners is on by default and hides more than 40 consent managers, including OneTrust, Cookiebot, Didomi, Sourcepoint and Usercentrics. Nothing is clicked, so consent state is never changed; the banners are simply not in your image. For anything else in the way, chat widgets or sticky bars, pass CSS selectors in hideSelectors.
Can I screenshot many URLs in one run?
Yes, up to 500 URLs per run, with duplicates removed automatically. concurrency controls how many pages are captured in parallel, from 1 to 5, over one shared browser, so a batch takes seconds per page rather than minutes.
Can this capture pages behind a login?
No. This version has no cookie or session support, so only pages reachable at a public URL can be captured. Private and internal hosts such as localhost and RFC-1918 addresses are rejected by design, and rejected URLs cost nothing.
Can website screenshots be used as compliance or legal evidence?
Each capture is timestamped and recorded with its HTTP status and the final URL after redirects, and you can store the fully rendered HTML alongside the image, which is what an evidence or archiving trail needs. Whether that satisfies a particular legal standard is your call, not something this Actor can promise.
How do I capture the mobile and tablet versions of a page?
Set device to mobile (iPhone 390x844 with touch and a mobile user agent) or tablet (iPad 820x1180), or stay on desktop and set viewportWidth and viewportHeight yourself, anywhere from 320 to 3840px wide. Run the same URL list once per device to get all three renders, and turn on retina for 2x images.
Why does this Actor run with limited permissions?
Least privilege. The Actor only reads and writes its own storages: the run's key-value store for the screenshot and HTML files, and the run's dataset for the rows. It needs no other access to your account.
More data tools by Automation Craft
- ShopBack Scraper - Cashback Rates, Affiliates for cashback rates and the affiliate network behind a merchant.
- Amazon Product Scraper - Search, Best Sellers for product listings, prices and rankings.
- Google Trends Scraper - Compare and Trending Now for search demand behind the sites you capture.
- Meta Ad Library Scraper - All Placements, Filters for competitor ad creatives.
- G2 Reviews Scraper: Ratings, Pros and Cons for software reviews without blocked runs.
- ATS Jobs Scraper & API - Greenhouse, Lever, Ashby for job postings across five ATS platforms.