To capture the current browsing context as a Java byte[], cast your Selenium driver to TakesScreenshot and call getScreenshotAs(OutputType.BYTES). The returned value is raw image bytes, ready to pass to code that stores, uploads, or processes them.
Capture a screenshot as byte[]
Use this call after the driver has opened the page you want to capture:
byte[] screenshot = ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
Here is a minimal complete example using Selenium’s Java API. It navigates to a URL, captures the screenshot bytes, and then quits the driver:
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.WebDriverException;
public class WebsiteScreenshot {
public static void main(String[] args) {
WebDriver driver = new ChromeDriver();
try {
driver.get("https://example.com");
byte[] screenshot = ((TakesScreenshot) driver)
.getScreenshotAs(OutputType.BYTES);
// Pass screenshot to your storage, upload, or image-processing code.
System.out.println("Captured " + screenshot.length + " bytes");
} catch (WebDriverException e) {
// Replace with the application's normal logging and error handling.
System.err.println("Screenshot capture failed: " + e.getMessage());
} finally {
driver.quit();
}
}
}
This example assumes Selenium and a compatible browser driver are already configured in the Java project. The screenshot call belongs after navigation and before driver.quit(), while the browser session is still active.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errors#1 Best Overall
- 14" diagonal, 1366x768 resolution, HD BrightView LED, Glossy NON-TOUCH Display
What the returned bytes contain
OutputType.BYTES requests the screenshot as raw bytes rather than as a file or an encoded string. Selenium’s OutputType API documentation describes BYTES as the byte-array representation; the same API also supports FILE and BASE64.
- Choose
BYTESwhen the next step accepts a Java byte array, such as an upload or in-memory processing operation. - Choose
FILEwhen you specifically want Selenium to return a temporary screenshot file. - Choose
BASE64when the receiving interface expects base64-encoded data rather than raw bytes.
The byte[] contains the screenshot image data; it is not a path to a saved file. If you need a persistent file, write the bytes to a path using Java’s file APIs or select Selenium’s file output instead.
Rank #2
- 1.1 GHz (boost up to 2.4GHz) Intel Celeron N5030 Quad-Core
- 4GB DDR4 System Memory; 128GB Solid State Drive
- 11.6" HD (1366 x 768) Multi-Touch Display
- Combo headphone/microphone jack - Noble Wedge Lock slot - HDMI; 2 USB 3.1 Gen 1
- Windows 11 Pro
Capture scope: current context is not always the full page
Selenium describes a screenshot as a capture of the current browsing context. The WebDriver screenshot specification governs conformant implementations, but behavior can vary with browser and driver. Selenium’s windows and tabs guide shows the Java screenshot pattern; its RemoteWebDriver API documentation notes that nonconformant implementations may use best-effort behavior that captures the whole page, the current window, a visible frame portion, or the display containing the browser.
Therefore, do not assume this call produces a full-page screenshot in every browser-driver setup. If full-page output is a requirement, verify the behavior of the specific driver and browser you use, and test pages that extend beyond the visible viewport.
Recommended Free Tools
Rank #3
- 256 GB SSD of storage.
- Multitasking is easy with 16GB of RAM
- Equipped with a blazing fast Core i5 2.00 GHz processor.
Handle capture failures
The screenshot method may throw WebDriverException. The API documents the exception but does not prescribe a retry policy. Catch it at the boundary appropriate to your application, record useful context such as the target URL and browser session, and apply your own failure or retry behavior.
- Keep the driver session open until capture completes.
- Confirm that the object being cast implements
TakesScreenshot; the cast is necessary because the screenshot method is exposed through that interface. - If a screenshot appears incomplete, first check the active window or frame and the browser-driver behavior before treating the result as a full-page capture.
Or skip the browser setup
If you need a screenshot without managing a Selenium browser session, ScreenshotNeo provides a screenshot API and MCP server. One GET request returns an image or PDF. For example, this cURL request saves a WebP screenshot:
Quick Recap
Best Value
- WINDOWS 11 | STABLE PERFORMANCE: Powered by Intel Celeron N4020 processor and Windows 11 system, this laptop delivers stable performance for everyday computing tasks. It supports web browsing, online learning, document editing, email communication, and basic office work with optimized power efficiency, providing a practical and reliable experience for essential daily use for daily use.
- 15.6” FHD IPS DISPLAY: Features a 15.6-inch Full HD IPS display with narrow bezels, offering wider viewing angles and clearer image details compared to standard panels. The improved screen-to-body ratio enhances visual experience for study, reading, document work, and video playback, making it suitable for both productivity and entertainment use.
- 4GB DDR4 + 128GB eMMC STORAGE: Equipped with 4GB DDR4 memory and 128GB eMMC storage for everyday basics such as browsing, documents, email, and online learning platforms. The built-in TF card slot supports storage expansion up to 1TB, giving you more flexibility for files, photos, videos, and daily documents. TF card not included.
- CONNECTIVITY & PORTS: Includes 1× TF card slot, 2× USB 3.2 Gen1 ports, and 2× full-featured Type-C ports (USB 3.2 Gen1). The Type-C ports support data transfer, charging, and video output, enabling flexible connection with external devices such as monitors, storage, and peripherals for daily work and study use.
- LIGHTWEIGHT DESIGN | ONLINE COMMUNICATION: Designed with a slim, portable profile, this laptop is easy to carry for school, commuting, and travel. A built-in 1MP front camera supports online classes, video meetings, remote communication, and everyday conferencing. The 3300mAh battery works with the low-power system design to support practical daily use, while thermal optimization helps maintain quieter operation during extended tasks.
Rank #4
- EFFORTLESS EVERYDAY PERFORMANCE: Powered by Intel Celeron N4020 processor and Windows 11 Home system, delivering reliable, low-power efficiency for daily tasks like document editing, email, online classes, and web browsing
- 15.6-INCH FULL HD DISPLAY: Enjoy immersive visuals on the 15.6" FHD (1920x1080) anti-glare screen with micro-edge bezels. Delivers clear details and comfortable viewing for long study sessions, working on spreadsheets, and video playback
- RESPONSIVE MULTITASKING & STORAGE: Built with 4GB LPDDR4 RAM and 128GB eMMC storage for smooth daily essential use. Expand your storage by up to 1TB via the integrated TF card slot to easily store movies, photos, and working files
- ADVANCED CONNECTIVITY: Outfitted with 2x Full-Featured Type-C ports for data transfer, fast charging, and dual-monitor output, alongside 2x USB 3.2 Gen1 ports and a 3.5mm audio jack for complete peripheral compatibility
- LIGHTWEIGHT & SILENT OPERATION: Slim and portable for effortless travel or commuting. Features a 1MP HD webcam for remote meetings, 38Wh battery with 45W Type-C fast charging, and a fanless silent design for peaceful work environments.
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 documentation for request parameters and output options. ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots, and the Free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.
Sources
- Selenium OutputType API documentation
- Selenium: Working with windows and tabs
- Selenium RemoteWebDriver API documentation
- Selenium package summary
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.




