Website Screenshot Generator

codemaster devops · @codemasterdevops

Capture full-page or viewport PNG screenshots from a list of URLs. Export page URLs and image links for visual QA, monitoring, and archives.

About

What does Website Screenshot Generator do?

Website Screenshot Generator captures PNG images of web pages from a list of URLs. Use it to document landing pages, collect visual QA evidence, or archive a set of pages with a consistent viewport.

What website screenshot data can you extract?

Each successful capture saves a PNG in the run's key-value store and adds a dataset row with these fields.

  • url is the final page URL after redirects.
  • screenshotUrl is the authenticated Bytewells download URL for the PNG record. In local runs the field is null.
  • screenshotKey identifies the PNG in the run's key-value store.

How to use Website Screenshot Generator

  1. Add URLs to the List of URLs field. For API calls, pass urls as URL strings or objects with a url field. The legacy single url input is also supported.
  2. Set the viewport and choose full-page or viewport-only capture. Full-page capture is enabled by default.
  3. Run the Actor. Open the dataset to inspect the metadata, then use the screenshot link or the key-value store to retrieve the PNG.
Example input
{
  "urls": [{"url": "https://example.com/"}],
  "waitUntil": "load",
  "viewportWidth": 1280,
  "viewportHeight": 720,
  "fullPage": false
}
Example dataset row
{
  "url": "https://example.com/",
  "screenshotUrl": "https://bytewells.com/api/v2/key-value-stores/STORE_ID/records/screenshot-65e2b3069d6a6834661d3976e381f17c?disableRedirect=true",
  "screenshotKey": "screenshot-65e2b3069d6a6834661d3976e381f17c"
}
Capture options
  • viewportWidth supports 100 to 3,840 pixels. viewportHeight supports 100 to 4,320 pixels. The default viewport is 1,280 × 1,080.
  • waitUntil supports load, domcontentloaded, networkidle2, and networkidle0. Use delay for extra rendering time in milliseconds.
  • scrollToBottom can help trigger lazy-loaded content. Set delayAfterScrolling or enable waitUntilNetworkIdleAfterScroll with a timeout.
  • selectorsToHide accepts CSS selectors such as #cookie-banner, .newsletter-popup.
Exports and limitations

Export the dataset as JSON or CSV for URL and screenshot metadata. Download PNG files separately from key-value storage. Bytewells serves the images as binary downloads. Use a .png extension when saving them. The Actor captures what its browser can reach and render. Login walls, blocking, and dynamic content can change the result. Repeated URLs may be deduplicated. A batch can return fewer rows when pages fail, so compare the dataset with the input and check the run log.

FAQ

What does the Actor capture?
It captures PNG screenshots of web pages. Each successful capture produces a row with the final page URL, screenshot download URL, and storage key.
Can I capture multiple URLs in one run?
Yes. Add them to urls as strings or objects with a url field. Distinct pages on the same domain get separate screenshot keys.
Can I capture only the visible part of the page?
Yes. Set fullPage to false and use viewportWidth and viewportHeight to control the image dimensions.
Can I use a narrow viewport for responsive QA?
Yes. Set viewportWidth and viewportHeight to the dimensions you want to inspect.
Can I wait for JavaScript or lazy-loaded content?
Yes. Choose a waitUntil mode, add a delay, or enable scrollToBottom with a post-scroll delay or network-idle wait.
Can I hide cookie banners or pop-ups?
Yes. Enter their CSS selectors in selectorsToHide to hide matching elements before capture.
Where do I download screenshots?
Open the run key-value store and find the record by screenshotKey, or request screenshotUrl with Bytewells authentication. Save the file with a .png extension.
Why are there fewer dataset rows than input URLs?
Each successful capture writes one row. Duplicate requests may be deduplicated, and failed captures can reduce the count. Check the run log.
Do I need a proxy or a screenshot API key?
The default configuration uses a direct browser connection and requires no third-party screenshot API key. Proxy use is optional.

More Actors from the same publisher.

View all from @codemasterdevops