ScreenshotNeo

BlogGuides

Selenium News and Updates: A Smattering of Selenium 93

A clear guide to Selenium’s current components and release snapshot, with historical context for the ambiguous “93” in the title and a practical browser screenshot alternative.

By the ScreenshotNeo team4 October 20268 min read

Selenium is browser automation software. Its main components serve different jobs: WebDriver drives browsers from code, Selenium IDE records and replays browser interactions, and Selenium Grid distributes browser test runs across machines. The official Selenium downloads page listed version 4.49.0 as stable for the language bindings and Server/Grid in the snapshot checked on October 3, 2026; that listing was dated September 9, 2026. Check the official page before installing, because versions change.

The phrase “Selenium 93” in this title is ambiguous. The available release information does not establish that it refers to a Selenium version or a particular release. Selenium’s official Python changelog does contain historical Selenium 4.0 Alpha 7 notes, but those prerelease notes are not current upgrade guidance.

1. What Selenium is, and which component to use

Selenium automates browsers. Choose a component based on the job:

Component Use it for Typical starting point
WebDriver Automated browser interactions from a programming language, including regression tests and scripts that run locally or remotely. Write a test or script using a language binding and a browser driver.
Selenium IDE Recording and replaying straightforward browser interactions; useful for exploratory testing and quick reproductions. Install the browser plugin and record a flow.
Selenium Grid Distributing tests across machines and centrally managing browser and operating system environments. Run a Grid server and point remote WebDriver sessions at it.

The Selenium project describes IDE as a plugin for Chrome, Firefox, and Edge. The project positions WebDriver for robust browser-based automation and Grid for running tests across machines and environments. These components complement one another: IDE can help explore a flow, WebDriver can turn the behavior into maintained code, and Grid can distribute that code’s runs.

2. Current Selenium release snapshot

At the time the research was checked, the official downloads page listed Selenium 4.49.0 as stable for .NET/C#, Ruby, Java, Python, and JavaScript, and listed Selenium Server/Grid 4.49.0 as the latest stable version. The language binding entries were dated September 9, 2026. Consult the [official Selenium downloads page](https://www.selenium.dev/downloads/) for the current versions, language-specific changelogs, and API documentation before choosing an install command.

This is a dated snapshot, not a promise that 4.49.0 remains the latest version when you read this. The title’s “93” is not explained by this snapshot, so it should not be treated as a release number without another source.

3. Historical context: Selenium 4.0 Alpha 7 Python notes

The surfaced Python changelog includes these Selenium 4.0 Alpha 7 changes:

  • Python versions earlier than 3.7 were dropped.
  • desired_capabilities was deprecated in favor of capabilities.
  • DevTools API support was added.
  • The notes also mention fixes and improvements involving remote-driver file uploads, local proxy handling, script pinning, WebKitGTK/WPEWebKit, and Edge WebView2 naming.

These are historical prerelease notes. They do not establish what changed in the current stable release, and the Python-version change is not current compatibility advice. For upgrades, use the current [Python changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES) and the current documentation for your chosen binding.

4. A minimal WebDriver workflow

The exact install and browser setup depend on your language, browser, and environment. Start with the binding’s current installation instructions linked from the [Selenium downloads page](https://www.selenium.dev/downloads/). Then use the basic workflow below: create a driver, navigate, inspect or interact with the page, and always close the session.

Python example

from selenium import webdriver
from selenium.webdriver.common.by import By

# Configure the browser and driver using the current Selenium setup
# instructions for your environment.
driver = webdriver.Chrome()
try:
    driver.get("https://example.com")
    print(driver.title)
    heading = driver.find_element(By.TAG_NAME, "h1")
    print(heading.text)
finally:
    driver.quit()

The code uses Selenium’s Python binding API; the browser and driver must be available to the environment. For a remote session, configure a remote WebDriver endpoint and capabilities according to the current binding documentation.

Choose the execution shape

  1. Local script: run WebDriver on the developer machine to explore a page or debug a small test.
  2. Automated regression suite: put browser creation and cleanup in test fixtures, make assertions about behavior, and keep selectors and waits maintainable.
  3. Remote or distributed suite: run sessions through Grid when you need centralized environments or parallel execution across machines.

5. When browser automation is not the right way to get a screenshot

Selenium is appropriate when the task requires browser interaction, application state, or assertions. If the output you need is simply a rendered page image or PDF, operating a full browser session yourself adds setup and lifecycle work. A screenshot API can handle capture as a request instead.

Or skip the browser setup

ScreenshotNeo is a website screenshot API and MCP server. One GET request can return a PNG, JPEG, WebP, or PDF. See the ScreenshotNeo API documentation for parameters and response details.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
    timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
const bytes = Buffer.from(await res.arrayBuffer());
await import('node:fs/promises').then(fs => fs.writeFile('shot.webp', bytes));

Cookie and consent banners, newsletter popups, and chat widgets are removed before capture; each cleanup step can be turned off. Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed, and response headers identify the page verdict and billing status. AI agents can use the MCP server’s take_screenshot, get_page_info, and capture_pdf tools. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000 screenshots. Every feature is available on every plan.

Sign up for ScreenshotNeo’s free plan and get 1,000 screenshots a month with no card.

6. Choosing between IDE, WebDriver, Grid, and an API

If your goal is… Start with… Why
Explore a flow or reproduce a simple interaction quickly Selenium IDE It records and replays browser interactions.
Maintain coded browser tests or automate interactive behavior WebDriver It provides language bindings for local and remote browser control.
Run a suite across managed browser environments or machines Grid It distributes sessions and centralizes environments.
Produce screenshots or PDFs without managing a browser session ScreenshotNeo It provides capture through one HTTP request, with optional MCP tools for agents.

For a large test program, the choice is not necessarily exclusive. A team can use WebDriver for behavioral tests and a screenshot API for visual assets, page previews, or agent workflows that only need a capture.

7. Reliability, performance, and cost considerations

WebDriver and Grid

  • Reliability: make cleanup unconditional so failed assertions do not leave browser processes or remote sessions behind. Prefer condition-based waits over assumptions that every page loads at a fixed speed.
  • Performance: parallel Grid sessions can increase throughput, but require available browser capacity and can make shared test data or rate limits a source of contention. Keep each test independent where possible.
  • Cost: Selenium is software, but executing it still consumes compute, browser capacity, and maintenance time. The dossier does not establish provider prices, so compare hosted execution costs directly with providers if you choose one.

Screenshot API captures

  • Reliability: inspect the response status and the service’s page-verdict and billing headers. A successful HTTP exchange alone does not mean the target rendered the intended content.
  • Performance: full-page screenshots, delayed rendering, and network-idle waits can take longer than a viewport capture. Set a client timeout appropriate to the page and your workflow.
  • Cost: ScreenshotNeo’s stated plans are Free (1,000 per month), Starter ($5 for 3,000), Growth ($15 for 15,000), Pro ($39 for 60,000), Scale ($99 for 250,000), and Business ($249 for 1,000,000); yearly billing gives two months free. Clean captures are billed; bot checks/CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not.

8. Troubleshooting Selenium runs

Symptom Likely cause What to do
Browser session does not start Browser or driver setup is missing or incompatible with the environment. Follow the current Selenium setup instructions for the chosen browser and binding; verify the browser is installed and the driver/session configuration is available.
Element lookup fails The page has not rendered the element yet, the locator is wrong, or the element is inside a different browsing context. Confirm the locator against the live page, wait for the required condition, and switch into the relevant frame or window where applicable.
Test passes locally but fails remotely Browser versions, operating systems, timing, viewport, or test data differ. Record the remote environment and capabilities, make test data deterministic, and reproduce with the same browser configuration.
Tests hang or leak browser processes Driver cleanup does not run after an exception or a remote session remains open. Put driver shutdown in a finally block or test fixture teardown and configure appropriate timeouts.
Old Python capabilities code emits deprecation concerns Code follows historical API patterns. Use the current binding documentation and changelog to migrate; Alpha 7’s note alone is not sufficient upgrade guidance.

9. Screenshot capture troubleshooting

Symptom Likely cause What to do
Response is not the expected image The page may have failed to load, returned a bot check, or produced a blank result. Check the response headers, especially page verdict and billing indicators, then retry or inspect the target page behavior.
Client times out The page or requested wait condition takes longer than the client timeout. Use a suitable timeout and review whether the page needs a delay, selector wait, or network-idle wait; avoid waiting longer than the capture requires.
Output file cannot be opened The client saved an error response body as if it were an image. Check HTTP status and response headers before saving or treating the body as an image; consult the API documentation for response handling.
Capture includes unwanted page content Cleanup behavior may be disabled or the content is not among the recognized elements. Review cleanup options and use selectors or custom page controls where appropriate; individual cleanup steps can be turned off.

10. Frequently asked questions

Does “Selenium 93” identify a known release?

The research does not resolve what “93” means. The official version snapshot and historical Alpha 7 notes should not be used to infer it.

Is Selenium IDE a replacement for WebDriver?

It is useful for recording and replaying simple flows, while WebDriver is the coded automation interface. Use the component that fits the maintenance and control your work needs.

Does Grid replace WebDriver?

No. Grid distributes browser sessions; WebDriver is the interface used by scripts to control browsers.

Can I use Selenium just to save a page screenshot?

Yes, browser automation can capture pages, but if you only need an image or PDF, an HTTP screenshot API such as ScreenshotNeo avoids managing a browser session yourself.

Sources