1919
2020from selenium .webdriver .chromium .remote_connection import ChromiumRemoteConnection
2121from selenium .webdriver .common .driver_finder import DriverFinder
22- from selenium .webdriver .common .options import ArgOptions
23- from selenium .webdriver .common .service import Service
2422from selenium .webdriver .remote .command import Command
2523from selenium .webdriver .remote .webdriver import WebDriver as RemoteWebDriver
2624
25+ from .options import ChromiumOptions
26+ from .service import ChromiumService
27+
2728
2829class ChromiumDriver (RemoteWebDriver ):
2930 """Controls the WebDriver instance of ChromiumDriver and allows you to
@@ -33,8 +34,8 @@ def __init__(
3334 self ,
3435 browser_name : Optional [str ] = None ,
3536 vendor_prefix : Optional [str ] = None ,
36- options : ArgOptions = ArgOptions () ,
37- service : Optional [Service ] = None ,
37+ options : Optional [ ChromiumOptions ] = None ,
38+ service : Optional [ChromiumService ] = None ,
3839 keep_alive : bool = True ,
3940 ) -> None :
4041 """Creates a new WebDriver instance of the ChromiumDriver. Starts the
@@ -47,7 +48,9 @@ def __init__(
4748 - service - Service object for handling the browser driver if you need to pass extra details
4849 - keep_alive - Whether to configure ChromiumRemoteConnection to use HTTP keep-alive.
4950 """
50- self .service = service
51+
52+ self .service = service if service else ChromiumService ()
53+ options = options if options else ChromiumOptions ()
5154
5255 finder = DriverFinder (self .service , options )
5356 if finder .get_browser_path ():
@@ -59,8 +62,8 @@ def __init__(
5962
6063 executor = ChromiumRemoteConnection (
6164 remote_server_addr = self .service .service_url ,
62- browser_name = browser_name ,
63- vendor_prefix = vendor_prefix ,
65+ browser_name = str ( browser_name ) ,
66+ vendor_prefix = str ( vendor_prefix ) ,
6467 keep_alive = keep_alive ,
6568 ignore_proxy = options ._ignore_local_proxy ,
6669 )
0 commit comments