Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

For a reproducible Selenium setup on Windows 7, use a pinned Chrome 109 browser with a matching ChromeDriver 109 build, then enable headless mode with ChromeOptions. The ChromeDriver archive lists versions 109.0.5414.74 and 109.0.5414.25 for Chrome 109. Keep the browser and driver aligned, and provide ChromeDriver through PATH or an explicit Selenium Service path rather than relying on automatic discovery on this legacy system.

Choose a pinned Windows 7 setup

Windows 7 is best treated as a frozen legacy environment for this workflow, not as a host for an automatically updating browser paired with a manually fixed driver. Use Chrome 109 and one of the ChromeDriver 109 builds documented for it: 109.0.5414.74 or 109.0.5414.25. The browser and driver major versions should match. If Chrome updates but ChromeDriver stays at 109, Selenium may no longer be able to create a session.

The Selenium binding also matters, but the available compatibility information does not establish a particular Selenium release as the right choice for every Windows 7 installation. Use a binding already known to run in your Python environment, and keep its version recorded alongside the browser and driver versions. Avoid assuming that current Selenium Manager, current Chrome, or current Chrome for Testing packages support Windows 7; current distributions target modern platforms, and the evidence here does not establish Windows 7 compatibility for them.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What to download and record

  • A Chrome 109 browser build that runs on the Windows 7 machine.
  • ChromeDriver 109.0.5414.74 or 109.0.5414.25, from the ChromeDriver archive.
  • A Selenium Python binding version that works in the environment.
  • The exact browser version, driver version, Selenium version, and driver path used by the working setup.

Chrome’s headless documentation also records an older compatibility example: “ChromeDriver 2.32 uses Chrome 61 and works well with headless Chrome.” That statement concerns Chrome 61, not Chrome 109, so it should not be used to select a driver for the setup described here.

#1 Best Overall
Dell Latitude E6430-14"" - Core i7 3520M - Windows 7 Professional 64-bit - 4 GB RAM - 500 GB HDD -, Black & Silver
  • 3rd Generation Intel Core i7-3520M 2.9Ghz Processor (4M Cache, up to 3.60 GHz With Turbo Boost), Genuine Windows 7 Professional 64 Bit Operating system.
  • 4GB DDR3 Memory/Wi-Fi
  • 500GB Hard Drive/DVDR/RW
  • 14.0" Anti-Glare LED display with built in Webcam
  • HDMI, Bluetooth, Intel HD4000

Launch headless Chrome with Selenium in Python

Install Selenium in the Python environment used to run the script, then save and run the following. Replace the explicit driver path if your copy of chromedriver.exe is elsewhere. If the executable is already on PATH, you can omit the Service import and the service argument.

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service

options = Options()
options.add_argument("--headless")
options.add_argument("--window-size=1365,768")
# Optional compatibility fallback for some older headless environments:
# options.add_argument("--disable-gpu")

service = Service(r"C:toolschromedriver.exe")
driver = webdriver.Chrome(service=service, options=options)
try:
    driver.get("https://example.com")
    print(driver.title)
finally:
    driver.quit()

The essential headless setting is --headless, added to the ChromeOptions object before creating the WebDriver. The window-size argument gives the page a defined viewport; it does not request a full-page screenshot. The optional --disable-gpu argument is a fallback to try only if the older environment needs it, not a universal requirement.

Use PATH or specify the executable

With ChromeDriver on PATH, Selenium can discover it without a path in the script. For a legacy machine, an explicit Service path makes it clearer which executable is being used and avoids accidentally selecting another copy earlier on PATH:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
service = Service(r"C:toolschromedriver.exe")
driver = webdriver.Chrome(service=service, options=options)

Use a raw Python string for a Windows path, as above, or escape each backslash. Confirm the file exists at that exact location. If you move the driver, update the path or PATH configuration before running the script again.

Rank #2
Hp Elitebook 8470p - Core I5 3340m / 2.7 Ghz - Windows 7 Pro 64-bit - 4 Gb Ram - 320 Gb HDD - DVD S
  • Powerful Processing Performance: Equipped with Intel Core i5-3340M processor running at 2.7 GHz, delivering reliable computing power for multitasking, business applications, and everyday productivity tasks with smooth and efficient performance
  • Clear Visual Display: Features a 14.0-inch HD Anti-Glare LED SVA display that reduces eye strain and provides excellent visibility in various lighting conditions, making it ideal for extended work sessions and presentations
  • Ample Storage Capacity: Comes with 4GB DDR3 RAM for efficient multitasking and a spacious 320GB hard disk drive providing plenty of storage space for documents, files, applications, and multimedia content
  • Versatile Connectivity Options: Includes DVD+/-RW optical drive for reading and writing discs, 802.11a/b/g/n wireless connectivity for fast internet access, Bluetooth technology for wireless device pairing, and integrated webcam for video conferencing
  • Professional Operating System: Pre-installed with Windows 7 Professional 64-bit operating system, offering enhanced security features, business-oriented functionality, and compatibility with a wide range of professional software applications

Set Chrome’s location when it is nonstandard

If Chrome is installed in a location Selenium does not find, set the binary location explicitly before constructing the driver. Use the path to the actual browser executable on that machine:

options.binary_location = r"C:pathtochrome.exe"

This setting tells ChromeOptions which Chrome binary to launch; it does not change the ChromeDriver version requirement. Verify the executable path rather than assuming a default installation directory.

Check versions and confirm the first run

Before debugging Python, ask both executables to report their versions. Run these from Command Prompt, using their full paths if they are not on PATH:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
chrome.exe --version
chromedriver.exe --version

Compare the major version numbers. For the documented pairing in this guide, both should report version 109. Then run the short script against a simple page and check that it prints the page title and exits. The finally block calls quit() even when navigation or title retrieval raises an exception, which helps avoid leaving a Chrome process behind.

Rank #3
Dell Latitude E6440 - Core i5 4200M / 2.5 GHz - Windows 7 Pro 64-bit - 4 GB RAM - 320 GB HDD - DVD-Writer - 14" 1366 x 768 ( HD ) - Intel HD Graphics
  • Intel Core 4th Generation i5-4200M Processor (Dual Core, 3M Cache, 2.5 GHz, w/HD Graphics 4600).
  • 320 GB SATA Hard Drive (7200 RPM), 4GB DDR3L at 1600MHz, 8X DVD ROM Drive.
  • 14.0 Inch HD (1366x768) Anti-Glare LED-backlit, Dell Wireless 1506 802.11b/g/n.
  • Dell ControlVault, Fingerprint Reader, Smartcard and Contactless Smartcard Reader and Express Card.

When Selenium Manager is—and is not—a good choice

Selenium’s driver documentation says that, as of Selenium 4.6, Selenium can download the correct driver automatically. Selenium Manager documentation also describes detecting local Chrome on Windows and obtaining a matching driver. That can simplify setup on supported, current systems. On Windows 7, however, automatic management is less reproducible than pinning the browser and driver and supplying the executable explicitly: the current manager and browser distributions are not established here as supporting this legacy operating system.

If you test Selenium Manager and it succeeds in your particular environment, record the versions it selected and verify that the browser and driver remain paired. For a repeatable Windows 7 deployment, prefer the explicit Service path or a controlled PATH entry. PATH remains convenient, but check it for stale or duplicate driver executables when behavior differs between machines.

Troubleshoot launch failures

“Unable to locate driver” or driver discovery fails

  • Check that chromedriver.exe exists at the path passed to Service.
  • Try the explicit Service path instead of relying on PATH.
  • Remove or move an obsolete chromedriver.exe that appears earlier on PATH than the intended copy.
  • Run chromedriver.exe --version from the same path used in the script to confirm which copy is being checked.

This error points first to discovery or PATH configuration, rather than to the headless flag.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

“Session not created”

A browser/driver mismatch is a common cause. Run both version commands, compare their major numbers, and restore a matching pair. For Chrome 109, use one of the documented ChromeDriver 109 builds. Also check that Selenium is launching the browser binary you intended, especially if more than one Chrome installation is present.

Chrome launches from the wrong location or will not start

Confirm the configured Chrome binary path and whether that executable runs on the host. Set options.binary_location if Chrome is installed outside the location Selenium finds. If the failure persists, capture the first WebDriver error and work from that message rather than changing several options at once.

Intermittent failures with multiple Chrome processes

Multiple processes using the same browser profile can interfere with one another. Use a fixed profile dedicated to the automation or a temporary user-data directory for each run if this is the source of the conflict. Keep the profile separate from one used for ordinary browsing, and close the WebDriver cleanly with driver.quit().

Headless rendering differs from an expected screenshot

First set an explicit viewport, as in the example, and verify the same URL and browser version are being used. A viewport controls the browser window dimensions; it is not equivalent to capturing all content on a long page. The optional GPU flag may help in some older environments, but should be tested as a targeted compatibility change, not added as a required setting for every machine.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Reliability, maintenance, and security trade-offs

A pinned stack reduces unexpected version drift and makes a working setup easier to reproduce. Its trade-off is maintenance: when the browser or operating system cannot be updated normally, you retain old software and lose ongoing browser updates. Windows 7 is a legacy operating system, and the documented Chrome 109 pairing is not a reason to treat it as a suitable current production platform. Plan migration to a supported Windows release for security and continued browser updates.

If you must preserve a Windows 7 automation job temporarily, isolate that host from unrelated browsing, document the exact binaries and paths, and avoid silently changing one component at a time. The pinned pair is a compatibility workaround for a legacy environment, not a replacement for a supported operating system.

Or skip the browser setup

If your goal is a website screenshot rather than controlling a local Chrome process, ScreenshotNeo is a screenshot API and MCP server for developers. It captures remotely, so it does not launch Chrome on your Windows 7 machine and is not a substitute when you specifically need local Selenium automation.

For a direct capture, see the ScreenshotNeo API documentation and use this cURL request, replacing the target URL and API key:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com -o shot.webp

ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before a shot; each cleanup step can be turned off. Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and responses identify the page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents. The Free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000 shots. Every feature is available on every plan.

Sign up for 1,000 free screenshots a month, with no card required.

Sources and version scope

The Chrome for Developers page “Headless Chrome shell” documents the quoted Chrome 61 and ChromeDriver 2.32 example. The Selenium Project page “Unable to Locate Driver Error” states that Selenium Manager can download a correct driver as of Selenium 4.6 and describes PATH and explicit Service alternatives. The ChromeDriver archive lists the two ChromeDriver 109 builds cited above. These references establish the version and setup points discussed here; they do not establish support for current Chrome or Selenium Manager distributions on Windows 7.

Frequently Asked Questions

Does the ChromeDriver 2.32 example apply to Chrome 109?

No. That documented example pairs ChromeDriver 2.32 with Chrome 61. For Chrome 109, the relevant archived driver builds are 109.0.5414.74 and 109.0.5414.25.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Does this setup capture an entire long page?

No. The example opens a headless browser at a defined viewport and reads the page title; it does not implement a full-page capture workflow.

Quick Recap

Bestseller No. 1
Dell Latitude E6430-14'' - Core i7 3520M - Windows 7 Professional 64-bit - 4 GB RAM - 500 GB HDD -, Black & Silver
Dell Latitude E6430-14"" - Core i7 3520M - Windows 7 Professional 64-bit - 4 GB RAM - 500 GB HDD -, Black & Silver
4GB DDR3 Memory/Wi-Fi; 500GB Hard Drive/DVDR/RW; 14.0" Anti-Glare LED display with built in Webcam
$570.65
Bestseller No. 3
Dell Latitude E6440 - Core i5 4200M / 2.5 GHz - Windows 7 Pro 64-bit - 4 GB RAM - 320 GB HDD - DVD-Writer - 14' 1366 x 768 ( HD ) - Intel HD Graphics
Dell Latitude E6440 - Core i5 4200M / 2.5 GHz - Windows 7 Pro 64-bit - 4 GB RAM - 320 GB HDD - DVD-Writer - 14" 1366 x 768 ( HD ) - Intel HD Graphics
320 GB SATA Hard Drive (7200 RPM), 4GB DDR3L at 1600MHz, 8X DVD ROM Drive.; 14.0 Inch HD (1366x768) Anti-Glare LED-backlit, Dell Wireless 1506 802.11b/g/n.
$684.78

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.