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.
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_capabilitieswas deprecated in favor ofcapabilities.- 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
- Local script: run WebDriver on the developer machine to explore a page or debug a small test.
- Automated regression suite: put browser creation and cleanup in test fixtures, make assertions about behavior, and keep selectors and waits maintainable.
- 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
- Selenium downloads — current version listings and Selenium IDE description.
- Selenium homepage — project overview and component use cases.
- Selenium Python changelog — historical Alpha 7 notes.
- Selenium releases archive.
- ScreenshotNeo API documentation.


