The Desired Capabilities implementation.

class selenium.webdriver.common.desired_capabilities.DesiredCapabilities[source]

Set of default supported desired capabilities.

Use this as a starting point for creating a desired capabilities object for requesting remote webdrivers for connecting to selenium server or selenium grid.

Usage Example:

from selenium import webdriver

selenium_grid_url = ""

# Create a desired capabilities object as a starting point.
capabilities = DesiredCapabilities.FIREFOX.copy()
capabilities['platform'] = "WINDOWS"
capabilities['version'] = "10"

# Instantiate an instance of Remote WebDriver with the desired capabilities.
driver = webdriver.Remote(desired_capabilities=capabilities,

Note: Always use ‘.copy()’ on the DesiredCapabilities object to avoid the side effects of altering the Global class instance.

ANDROID = {'javascriptEnabled': True, 'platform': 'ANDROID', 'browserName': 'android', 'version': ''}
CHROME = {'javascriptEnabled': True, 'platform': 'ANY', 'browserName': 'chrome', 'version': ''}
EDGE = {'platform': 'WINDOWS', 'browserName': 'MicrosoftEdge', 'version': ''}
FIREFOX = {'marionette': True, 'javascriptEnabled': True, 'platform': 'ANY', 'browserName': 'firefox', 'version': ''}
HTMLUNIT = {'platform': 'ANY', 'browserName': 'htmlunit', 'version': ''}
HTMLUNITWITHJS = {'javascriptEnabled': True, 'platform': 'ANY', 'browserName': 'htmlunit', 'version': 'firefox'}
INTERNETEXPLORER = {'javascriptEnabled': True, 'platform': 'WINDOWS', 'browserName': 'internet explorer', 'version': ''}
IPAD = {'javascriptEnabled': True, 'platform': 'MAC', 'browserName': 'iPad', 'version': ''}
IPHONE = {'javascriptEnabled': True, 'platform': 'MAC', 'browserName': 'iPhone', 'version': ''}
OPERA = {'javascriptEnabled': True, 'platform': 'ANY', 'browserName': 'opera', 'version': ''}
PHANTOMJS = {'javascriptEnabled': True, 'platform': 'ANY', 'browserName': 'phantomjs', 'version': ''}
SAFARI = {'javascriptEnabled': True, 'platform': 'MAC', 'browserName': 'safari', 'version': ''}

This Page