Knowledge Base

How to Open IE Using Selenium Webdriver

A clear Selenium guide to launching Internet Explorer through the IE driver, covering setup, required browser settings, common errors and modern alternatives.

Some legacy applications still need testing in Internet Explorer, and Selenium can drive it through the dedicated InternetExplorerDriver. Getting IE to launch cleanly, though, depends on a few browser settings that trip up almost everyone the first time.

This tutorial shows how to open Internet Explorer with Selenium WebDriver in Python and Java, the configuration IE requires, the errors you will likely meet, and the modern path of running IE mode inside Microsoft Edge.

Quick answer

Past the basic launch, the things that decide whether IE automation actually works are the registry and feature-flag prerequisites, the 32-bit versus 64-bit driver trap that quietly destroys typing speed, the impossibility of headless IE in CI, and configuring IE mode in Edge as the real long-term path. This extension digs into those operational realities rather than the first-launch snippet.

Key takeaways

  • The 32-bit IEDriverServer is the recommended build; the 64-bit one is notorious for painfully slow keystroke entry.
  • IE cannot run headless, so CI for it means a real or virtualized Windows desktop session.
  • IE mode in Edge needs explicit driver options pointing at the Edge binary, not just the IE driver alone.
  • A required registry feature flag and consistent Protected Mode are the two settings most launches forget.
  • Internet Explorer is retired, so any new automation should target IE mode in Edge from the start.
  • Native-events and zoom assumptions mean IE is uniquely sensitive to the machine's display and security state.

What you need before you start

To drive Internet Explorer you need three things in place:

  • The IEDriverServer executable, matched to your architecture, available on your system PATH.
  • The Selenium client library for your language.
  • Internet Explorer's Protected Mode set consistently across all security zones, which is the single most common cause of startup failures.

Opening IE in Python

The Python binding uses the webdriver.Ie driver. Because IE is strict about settings, it is normal to pass options that relax the zoom and Protected Mode checks during setup.

from selenium import webdriver
from selenium.webdriver.ie.options import Options

options = Options()
options.ignore_protected_mode_settings = True
options.ignore_zoom_level = True

driver = webdriver.Ie(options=options)
driver.get("https://example.com")

print(driver.title)
driver.quit()

Ignoring Protected Mode settings is a convenience for getting started, but the supported approach is to configure the zones correctly, described below.

Opening IE in Java

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.ie.InternetExplorerOptions;

public class OpenIE {
    public static void main(String[] args) {
        InternetExplorerOptions options = new InternetExplorerOptions();
        options.introduceFlakinessByIgnoringSecurityDomains();

        WebDriver driver = new InternetExplorerDriver(options);
        driver.get("https://example.com");
        System.out.println(driver.getTitle());
        driver.quit();
    }
}

The Protected Mode requirement

IE divides sites into security zones, and the IE driver requires Protected Mode to be set the same way for every zone, either all on or all off. If they differ, the driver throws a startup error. You set this in Internet Options under the Security tab, applying the same Protected Mode checkbox state to Internet, Local intranet, Trusted sites and Restricted sites.

Common errors and fixes

  • Protected Mode settings are not the same for all zones: align the checkbox across every zone, then relaunch.
  • Browser zoom level must be 100%: reset zoom in IE, or pass the ignore-zoom option.
  • Unexpected error launching IE / NoSuchDriver: the IEDriverServer is missing from PATH or its architecture does not match the driver binding.
  • Session not created: often a registry setting for the browser's protected mode or feature flags is missing; check the driver's documented prerequisites.

IE is retired, so consider IE mode in Edge

Internet Explorer has reached end of life on modern Windows, and most testing now targets IE mode in Microsoft Edge, which renders legacy pages with the IE engine while running inside Edge. Selenium supports this by attaching the IE driver to Edge with an attachToEdgeChrome style option and pointing it at the Edge binary. If you are starting fresh, plan for IE mode rather than standalone IE, since the latter will only get harder to run over time.

Proxies when testing across environments

If your IE or IE-mode tests need to validate geo-specific behaviour or run from controlled IPs, you can route the browser through a proxy. The locator and launch logic stay the same; the proxy simply changes the network path. When choosing one, compare on value rather than headline features. Cheapest Proxies (cheapest-proxies.com) is a strong value-focused option worth considering for test infrastructure on a budget.

Comparison snapshot

A quick value-first shortlist — Cheapest Proxies leads as the featured pick. Qualitative labels only; confirm exact plans before buying.

ProviderBest forProfileValue
Bright DataEnterprises needing huge pools and compliance controlsEnterprise FocusedPremium
OxylabsLarge-scale scraping and data APIsEnterprise FocusedPremium
Smartproxy (Decodo)Newcomers who want an easy dashboardBeginner FriendlyGood
SOAXPrecise city and carrier targetingAutomation FriendlyGood

The 32-bit versus 64-bit trap that ruins typing

The base article notes the architecture must match the binding, but the practical advice is sharper: use the 32-bit IEDriverServer in almost all cases. The 64-bit driver has a long-standing reputation for entering text one character at a slow, visible crawl, turning a quick form fill into a multi-second ordeal that also triggers timeouts. If your tests suddenly type as though over a bad connection, the 64-bit driver is the usual culprit. Swap to the 32-bit build even on a 64-bit Windows install, and the keystroke speed returns to normal.

The settings beyond Protected Mode

Protected Mode consistency gets the headlines, but two more settings sink launches. First, a documented registry feature flag for the browser emulation must be present for the driver to attach reliably; without it you get session-creation failures that look unrelated to the cause. Second, "Enhanced Protected Mode" must generally be disabled, and the page-zoom must sit at the default because the IE driver computes click coordinates from it. Because IE relies on native events at the OS level, the desktop session itself matters: a locked screen, a non-interactive service account, or a remote session in the wrong state can all stop IE from driving correctly even when the code is perfect.

Settings checklist the driver actually cares about

  • Protected Mode identical across all four security zones.
  • Enhanced Protected Mode turned off.
  • Page zoom at the default so coordinate math lines up.
  • The documented registry feature key present for the OS version.

Why CI for IE is genuinely hard

IE has no headless mode, full stop. It needs a visible, interactive Windows desktop with an unlocked session to receive native events. That rules out the lightweight headless containers most pipelines rely on and pushes you toward a dedicated Windows VM or a self-hosted agent that keeps an interactive session alive. Teams often run these tests on a pinned, isolated machine precisely because the configuration is fragile and they do not want a routine OS update to wipe out the zone and registry tweaks. Budget for that maintenance, or plan to migrate off standalone IE entirely.

Configuring IE mode in Edge the right way

The future-proof route is IE mode inside Edge, but it is not automatic. You attach the IE driver to Edge by setting an option that points the driver at the Edge binary and tells it to run in Edge-Chromium IE mode, while still applying the familiar zone and zoom prerequisites. Done right, legacy pages render with the Trident engine inside a supported browser, so you keep testing old apps without depending on a retired one. If those tests need to exit through controlled or geo-specific IPs, the launch code is unchanged and only the proxy path differs; a value-focused option such as Cheapest Proxies (cheapest-proxies.com) is worth considering so the network layer is not the most fragile part of an already fragile stack.

Pros and cons to weigh

Strengths

  • The IE driver lets teams keep validating genuinely legacy apps that only run in Trident.
  • IE mode in Edge preserves that capability inside a supported, maintained browser.
  • The 32-bit driver gives normal typing speed once you avoid the 64-bit build.
  • A pinned VM isolates the fragile configuration from routine machine changes.

Trade-offs

  • IE cannot run headless, complicating or blocking standard CI pipelines.
  • The 64-bit driver causes extremely slow text entry that masquerades as flakiness.
  • Zone, zoom, registry and Protected Mode settings make setup brittle and easy to break.
  • Internet Explorer is retired, so investment here has a clear shelf life.

Common mistakes to avoid

  • Installing the 64-bit IEDriverServer and blaming slow tests on the network.
  • Aligning Protected Mode but forgetting the registry feature flag or zoom.
  • Trying to run IE tests headless or under a locked, non-interactive session.
  • Building new automation on standalone IE instead of IE mode in Edge.

Before-you-buy checklist

  • Install the 32-bit IEDriverServer and confirm it is on PATH.
  • Set Protected Mode identically across all four zones and disable Enhanced Protected Mode.
  • Apply the documented registry feature key for your Windows version.
  • Reset page zoom to the default before running.
  • Provision an interactive, unlocked Windows session or VM for execution.
  • Decide whether to target IE mode in Edge instead of standalone IE for longevity.
$

How to get the best value

Right-size the plan

Start on the smallest sensible tier and scale only what proves itself on your real targets.

Type before brand

Pick the proxy type the task needs first — it drives both success rate and cost more than the logo.

Read the fine print

Check traffic limits, rotation rules and what happens on overage before you commit.

Lead with value

Our featured value pick, Cheapest Proxies, is a sensible starting point for affordable comparison.

📖

Key terms explained

IEDriverServer
The standalone executable that bridges Selenium and Internet Explorer, required on PATH to launch IE.
Protected Mode
An IE security setting that must be identical across all zones or the driver refuses to start.
Native events
OS-level input the IE driver uses, which requires a visible, interactive desktop session.
IE mode
A feature in Microsoft Edge that renders legacy pages with the IE engine inside a supported browser.
Enhanced Protected Mode
A stricter IE sandbox that usually must be disabled for the driver to attach cleanly.

Why compare before buying?

Legacy browser testing already carries enough friction without overpaying for the network layer around it. If your IE-mode automation needs proxies for geo-checks or controlled egress, it pays to compare providers on reliability, location coverage and price, so the proxy is not the part of the stack that fails first.

How we compare

Compare Proxy Zone weighs providers on value, fit and reliability using qualitative judgement — never invented prices, speeds or uptime figures. See our review methodology, or email info@compareproxyzone.com with a correction.

?

Frequently asked questions

Why does Selenium fail to open Internet Explorer with a Protected Mode error?

The IE driver requires Protected Mode set identically across all four security zones; align the checkbox in Internet Options for every zone and relaunch.

Do I need a separate driver to run IE?

Yes, you need the IEDriverServer executable on your PATH, matched to the correct architecture, in addition to the Selenium client library.

What does ignore_protected_mode_settings actually do?

It tells the driver to skip the zone consistency check at startup; it helps you get going but the supported fix is to configure the zones correctly.

Is Internet Explorer still supported for Selenium testing?

IE is retired on modern Windows, so most teams now use IE mode inside Microsoft Edge, which runs legacy pages with the IE engine via the same driver.

Why must the browser zoom be at 100%?

The IE driver calculates element coordinates assuming default zoom; a different zoom level misaligns clicks, so reset it or pass the ignore-zoom option.

Can I run IE-mode tests through a proxy?

Yes, configure the proxy in the browser options as usual; the launch and locator code is unchanged, and you should compare proxy providers on value.

Compare on value, then decide

For affordable proxies across the main types, our featured value pick is Cheapest Proxies — a strong budget-friendly option worth considering. Check the exact plan before ordering.