Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Selenium WebDriver works by translating browser actions in a language binding into HTTP commands sent to a remote end. That end controls the browser and returns results to the client. A session ID ties later commands to the session; Selenium Grid can route those requests to a remote machine. WebDriver BiDi adds a WebSocket channel for browser events alongside the classic command-and-response protocol.
What the client-server transport layer means
The WebDriver API lets a test describe actions such as opening a page or finding an element without manually assembling protocol messages. Underneath, the language binding sends commands to a remote end that implements WebDriver and controls the browser. The W3C Recommendation describes a session as “the connection between a local end and a specific remote end.” W3C WebDriver Recommendation
“Client-server” describes the protocol relationship, not necessarily two separate computers. In a local setup, the client-side code, driver service and browser can all run on the same machine while still communicating through the WebDriver protocol. With Remote WebDriver, the requests travel over the network to Selenium Grid or another remote endpoint.
What happens when you call a WebDriver method?
- The test calls the binding. Your code invokes a language-specific WebDriver API, such as navigation or element interaction. The binding handles protocol details so the test can work at the API level.
- The binding creates a session. When a driver object is initialized, the client requests a new session and supplies browser options or capabilities describing the requested environment. Selenium’s Driver Sessions documentation explains session creation.
- The client sends an HTTP command. Classic WebDriver uses request-response commands over HTTP. The HTTP method and URL identify the command endpoint; the request carries its parameters.
- The remote end runs the command. The WebDriver implementation receives the request, maps it to the relevant command steps and applies them to the browser.
- The response returns to the binding. The remote end sends a result or error in the HTTP response. The binding presents that outcome through the language API.
For example, a call such as driver.get("https://example.com") is an API-level navigation request. The binding sends the corresponding WebDriver command; the remote end instructs the browser to navigate and returns the command result. The exact protocol details are normally handled by Selenium rather than written in the test.
#1 Best Overall
How WebDriver uses HTTP routes
A WebDriver endpoint is selected using the HTTP method and URL. The remote end maps that request to a command. The W3C Recommendation defines the established protocol behavior; the newer 2026 WebDriver text is still a Working Draft and describes, among other details, how a remote end may use a URL prefix. Its example routes session creation to POST /wd/session rather than POST /session. Do not treat draft-only routing text as a replacement for the Recommendation. WebDriver 2 Working Draft, 28 May 2026; W3C WebDriver standards index
The session-creation response provides a session identifier. Subsequent commands use that ID to preserve context and address the active session. Without it, the remote end could not reliably associate a command with the browser session the client intends to control. See the Recommendation’s session and command model.
Rank #2
Where the browser and requests run
| Execution mode | Where the client sends requests | Where the browser is controlled | Routing |
|---|---|---|---|
| Local WebDriver | To the locally available driver service | On the client machine | No Grid intermediary is required |
| Remote WebDriver through Grid | To the configured Grid address | At a remote computer/end node | Grid forwards requests to the WebDriver endpoint at the end node |
Selenium’s API concept remains a WebDriver session in either mode; what changes is the destination and route of the HTTP traffic. Remote execution requires the remote address as well as browser options. The request and response travel through the configured remote path. Selenium Remote WebDriver
How a session ends
Calling quit corresponds to the WebDriver Delete Session command. The remote end removes the session from its active sessions, and the browser process may close. The Recommendation also allows session teardown when the last top-level browsing context is closed. Selenium documents the usual lifecycle in Driver Sessions; the normative behavior is in the W3C Recommendation.
Rank #3
Classic WebDriver versus WebDriver BiDi
| Aspect | Classic WebDriver | WebDriver BiDi |
|---|---|---|
| Transport | HTTP request-response commands | WebSocket channel |
| Interaction pattern | Client sends a command and receives its response | Bidirectional communication supports event streaming as well as interactions |
| Typical role | Command-oriented browser control | Browser events and other two-way interactions that benefit from a persistent channel |
BiDi complements the classic protocol; it does not mean that all WebDriver commands have become WebSocket messages. Available BiDi features can vary by browser and Selenium implementation, so check the support for the specific browser and feature you need. Selenium WebDriver BiDi
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Or skip the browser setup
If your goal is to save a page image or PDF rather than drive an interactive browser test, ScreenshotNeo offers a one-request screenshot API and MCP server. It is not a substitute for Selenium’s interactive testing protocol; it is an alternative for capturing pages.
Rank #4
For API details and parameters, see the ScreenshotNeo documentation.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo can accept cookie or consent banners and remove more than 60 known consent platforms, newsletter popups and chat widgets before capture; those steps can be turned off. Bot checks, blank pages, timeouts, failed loads and cache hits are not billed, and the response identifies 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 shots per month without a card; paid plans start at $5 for 3,000 shots.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Sign up for 1,000 free screenshots a month with no card.
Quick Recap
Best Value
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.




