For a single machine, run Selenium’s official selenium/standalone-chrome image, connect to its WebDriver endpoint on port 4444, pass Chrome the --headless option, and save a PNG from the WebDriver client. Give the browser container 2 GB of shared memory, pin a complete image tag, and save the screenshot to a path that exists in the client’s filesystem.
Start a standalone Chrome container
Selenium Grid’s Standalone mode runs on one machine and is the simplest fit for a local task or a single-machine CI job. The browser runs inside the Selenium container; your Python process controls it over WebDriver.
As an Amazon Associate I earn from qualifying purchases.
Choose a complete image tag from the official Selenium Chrome image listing rather than relying on latest. Selenium recommends pinning a full tag so the browser and Grid versions are predictable. Tags change over time, so select one that suits your environment and plan to update it deliberately.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minutedocker run --rm -d --name selenium-chrome
-p 4444:4444
--shm-size="2g"
selenium/standalone-chrome:4.48.0-20260905
The tag above is an example observed in Selenium’s project documentation, not an evergreen recommendation. Check the current registry before using it. The Selenium project recommends --shm-size=2g for browser containers. It is a resource setting, not a guarantee of stability: page complexity, concurrency, host resources, and container limits still matter. See the Selenium Docker documentation.
#1 Best Overall
- 14" diagonal, 1366x768 resolution, HD BrightView LED, Glossy NON-TOUCH Display
The published WebDriver endpoint is port 4444. When your client runs on the Docker host and that port is published as above, connect to http://localhost:4444. If the client is another service in a Compose network, connect using the Selenium service name and port 4444 instead; do not use the host’s localhost from inside a separate container.
Connect with Python and save a viewport screenshot
Install Selenium in the environment running the client, then run this script. Create /artifacts first, or change the path to an existing directory. The screenshot is written by the Python client, not automatically into the Selenium browser container.
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("--headless")
driver = webdriver.Remote(
command_executor="http://localhost:4444",
options=options,
)
try:
driver.get("https://example.com")
ok = driver.save_screenshot("/artifacts/page.png")
if not ok:
raise OSError("Could not write screenshot")
finally:
driver.quit()
Remove the leading space before driver = if copying the snippet literally; it should align with options = Options(). The API’s save_screenshot(filename) captures the current window as PNG, returns False on an I/O error, and recommends a full path. See Selenium’s Python WebDriver API.
Rank #2
- 256 GB SSD of storage.
- Multitasking is easy with 16GB of RAM
- Equipped with a blazing fast Core i5 2.00 GHz processor.
This is a viewport screenshot, not a promise of a full-page image. If the client itself runs in a disposable container and the file must persist, bind-mount an output directory into that client container or upload the artifact through your CI system.
Set browser mode and viewport deliberately
Headless flag
Pass --headless through Chrome options. Chrome’s current documentation describes headless and headful modes as sharing Chrome code. Since Chrome 132.0.6793.0, the old Headless implementation is available only as a separate chrome-headless-shell binary; avoid old instructions that assume a built-in historical implementation. Selenium also lists --headless=new among commonly used Chrome arguments. Use the flag compatible with the Chrome version and bindings in your pinned environment, rather than treating flags as universally interchangeable. See Chrome Headless mode documentation and Selenium’s Chrome options documentation.
Window dimensions
Screenshot layout depends on the browser window. Set dimensions intentionally when a page has responsive breakpoints, and inspect the resulting PNG to confirm it matches the intended layout. Selenium’s Docker image documents SE_SCREEN_WIDTH and SE_SCREEN_HEIGHT settings; consult the image documentation for configuration details applicable to the selected tag.
Rank #3
- 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.
Choose output storage based on where the client runs
- Client on the host: save to a host path such as
./artifacts/page.png; ensure the directory exists and the Python user can write there. - Client in a container: save to a path in that client container. Mount a host directory there if the image must survive container removal.
- CI job: save into the job’s artifact directory and configure the CI system to retain or upload it.
Mounting a directory into the Selenium browser container does not by itself make the client’s output path durable. The process calling save_screenshot() determines which filesystem receives the file.
Free tools Windows power users keep installed
One-click scans. No signup required.
When to use a larger Selenium Grid
Use Standalone when one machine and one browser service are enough. Selenium states that “Standalone can only run on a single machine.” A Hub/Node or distributed Grid setup is more appropriate when browser sessions need to be shared across machines or capacity needs to scale independently. Grid also requires security controls: Selenium warns that it must be protected from external access. Restrict network exposure and apply the firewall and network controls appropriate to your deployment. See Selenium Grid documentation.
Keep versions repeatable without freezing them forever
Pin the Selenium image with a complete tag, then update it on a planned schedule so browser and driver security fixes are not ignored. Selenium notes that Chrome and ChromeDriver major versions must match. A full image tag helps keep browser and Grid versions aligned within a run; it does not remove the need to test planned updates.
Rank #4
- 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.
Troubleshoot common failures
- Connection refused at port 4444: confirm the Selenium container is running, that
-p 4444:4444is present when the client is on the host, and that the client uses the correct address. A client container should generally use the Selenium service name on its Docker network, not its ownlocalhost. - Screenshot path does not exist or write fails: create the parent directory, use an absolute path, check that the Python process has write permission, and handle a
Falsereturn fromsave_screenshot(). - Image disappears after the job: the screenshot may be in a disposable client container. Bind-mount the client’s output directory or configure CI artifact upload.
- Browser crashes or sessions are unstable: start with Selenium’s recommended 2 GB shared memory, then consider the page workload, number of concurrent sessions, host resources, and container limits. The shared-memory setting alone cannot ensure stability.
- Unexpected responsive layout: verify the actual window size and the image dimensions; configure the screen width and height deliberately for the selected Selenium image.
- Chrome and driver version mismatch: use a compatible Selenium image tag and check that Chrome and ChromeDriver major versions match.
- WebDriver endpoint is exposed publicly: restrict access immediately. Selenium Grid should not be left open to external traffic; use network isolation and firewall controls.
Or skip the browser setup
ScreenshotNeo provides a screenshot API and MCP server. One GET request can return a PNG, JPEG, WebP, or PDF. Cookie banners are accepted and removed before capture, along with known newsletter popups and chat widgets; those cleanup steps can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server lets AI agents use screenshot tools, including with Claude, Cursor, and other MCP clients.
For a simple PNG request, replace the URL with the page you need and supply your API key:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for parameters and response details. The Free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000. Sign up for the free plan.
Frequently Asked Questions
Does this Python example capture the whole page?
No. It captures the current browser window; the example does not implement full-page capture.
Can I use this setup for multiple machines?
Standalone is limited to one machine. Use a multi-component or distributed Selenium Grid when sessions need to run across machines.
Quick Recap
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.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →




