@@ -1068,6 +1068,7 @@ def get_remote_driver(
1068
1068
screen_resolution = None
1069
1069
browser_version = None
1070
1070
platform_name = None
1071
+ extension_capabilities = {}
1071
1072
for key in desired_caps .keys ():
1072
1073
capabilities [key ] = desired_caps [key ]
1073
1074
if key == "selenoid:options" :
@@ -1079,6 +1080,8 @@ def get_remote_driver(
1079
1080
browser_version = desired_caps [key ]
1080
1081
elif key == "platform" or key == "platformName" :
1081
1082
platform_name = desired_caps [key ]
1083
+ elif re .match ("[a-zA-Z0-9]*:[a-zA-Z0-9]*" , key ):
1084
+ extension_capabilities [key ] = desired_caps [key ]
1082
1085
if selenium4 :
1083
1086
chrome_options .set_capability ("cloud:options" , capabilities )
1084
1087
if selenoid :
@@ -1093,6 +1096,10 @@ def get_remote_driver(
1093
1096
if platform_name :
1094
1097
plat_name = platform_name
1095
1098
chrome_options .set_capability ("platformName" , plat_name )
1099
+ if extension_capabilities :
1100
+ for key in extension_capabilities :
1101
+ ext_caps = extension_capabilities
1102
+ chrome_options .set_capability (key , ext_caps [key ])
1096
1103
return webdriver .Remote (
1097
1104
command_executor = address ,
1098
1105
options = chrome_options ,
@@ -1133,6 +1140,7 @@ def get_remote_driver(
1133
1140
screen_resolution = None
1134
1141
browser_version = None
1135
1142
platform_name = None
1143
+ extension_capabilities = {}
1136
1144
for key in desired_caps .keys ():
1137
1145
capabilities [key ] = desired_caps [key ]
1138
1146
if key == "selenoid:options" :
@@ -1144,6 +1152,8 @@ def get_remote_driver(
1144
1152
browser_version = desired_caps [key ]
1145
1153
elif key == "platform" or key == "platformName" :
1146
1154
platform_name = desired_caps [key ]
1155
+ elif re .match ("[a-zA-Z0-9]*:[a-zA-Z0-9]*" , key ):
1156
+ extension_capabilities [key ] = desired_caps [key ]
1147
1157
if selenium4 :
1148
1158
firefox_options .set_capability ("cloud:options" , capabilities )
1149
1159
if selenoid :
@@ -1158,6 +1168,10 @@ def get_remote_driver(
1158
1168
if platform_name :
1159
1169
plat_name = platform_name
1160
1170
firefox_options .set_capability ("platformName" , plat_name )
1171
+ if extension_capabilities :
1172
+ for key in extension_capabilities :
1173
+ ext_caps = extension_capabilities
1174
+ firefox_options .set_capability (key , ext_caps [key ])
1161
1175
return webdriver .Remote (
1162
1176
command_executor = address ,
1163
1177
options = firefox_options ,
@@ -1278,6 +1292,7 @@ def get_remote_driver(
1278
1292
screen_resolution = None
1279
1293
browser_version = None
1280
1294
platform_name = None
1295
+ extension_capabilities = {}
1281
1296
for key in desired_caps .keys ():
1282
1297
capabilities [key ] = desired_caps [key ]
1283
1298
if key == "selenoid:options" :
@@ -1289,6 +1304,8 @@ def get_remote_driver(
1289
1304
browser_version = desired_caps [key ]
1290
1305
elif key == "platform" or key == "platformName" :
1291
1306
platform_name = desired_caps [key ]
1307
+ elif re .match ("[a-zA-Z0-9]*:[a-zA-Z0-9]*" , key ):
1308
+ extension_capabilities [key ] = desired_caps [key ]
1292
1309
if selenium4 :
1293
1310
opera_options .set_capability ("cloud:options" , capabilities )
1294
1311
if selenoid :
@@ -1303,6 +1320,10 @@ def get_remote_driver(
1303
1320
if platform_name :
1304
1321
plat_name = platform_name
1305
1322
opera_options .set_capability ("platformName" , plat_name )
1323
+ if extension_capabilities :
1324
+ for key in extension_capabilities :
1325
+ ext_caps = extension_capabilities
1326
+ opera_options .set_capability (key , ext_caps [key ])
1306
1327
return webdriver .Remote (
1307
1328
command_executor = address ,
1308
1329
options = opera_options ,
0 commit comments