Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion seleniumbase/__version__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# seleniumbase package
__version__ = "4.44.9"
__version__ = "4.44.10"
3 changes: 3 additions & 0 deletions seleniumbase/core/browser_launcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,9 @@ def extend_driver(
if not use_uc and os.path.exists(os.path.realpath(ext_dir)):
with suppress(Exception):
driver.webextension.install(os.path.realpath(ext_dir))
driver._is_using_auth = False
if proxy_auth:
driver._is_using_auth = True
if not use_uc and os.path.exists(proxy_helper.PROXY_DIR_PATH):
with suppress(Exception):
driver.webextension.install(proxy_helper.PROXY_DIR_PATH)
Expand Down Expand Up @@ -5786,6 +5788,7 @@ def get_local_driver(
)
driver.default_get = driver.get # Save copy of original
driver.cdp = None # Set a placeholder
driver._is_using_uc = False
driver._is_using_cdp = False
driver._is_connected = True
if uc_activated:
Expand Down
3 changes: 2 additions & 1 deletion seleniumbase/fixtures/base_case.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,8 @@ def open(self, url):
elif (
hasattr(self.driver, "_is_using_uc")
and self.driver._is_using_uc
and "@" in self.proxy_string
and hasattr(self.driver, "_is_using_auth")
and self.driver._is_using_auth
and (
not hasattr(self.driver, "_is_using_cdp")
or not self.driver._is_using_cdp
Expand Down
22 changes: 22 additions & 0 deletions seleniumbase/fixtures/page_actions.py
Original file line number Diff line number Diff line change
Expand Up @@ -1756,6 +1756,28 @@ def open_url(driver, url):
if __is_cdp_swap_needed(driver):
driver.cdp.open(url)
return
elif (
hasattr(driver, "_is_using_uc")
and driver._is_using_uc
and hasattr(driver, "_is_using_auth")
and driver._is_using_auth
and (
not hasattr(driver, "_is_using_cdp")
or not driver._is_using_cdp
)
):
# Auth in UC Mode requires CDP Mode
driver.uc_activate_cdp_mode(url)
return
elif (
hasattr(driver, "_is_using_uc")
and driver._is_using_uc
and hasattr(driver, "_is_using_cdp")
and driver._is_using_cdp
):
driver.disconnect()
driver.cdp.open(url)
return
url = str(url).strip() # Remove leading and trailing whitespace
if not page_utils.looks_like_a_page_url(url):
if page_utils.is_valid_url("https://" + url):
Expand Down
5 changes: 4 additions & 1 deletion seleniumbase/plugins/driver_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,10 @@ def Driver(
uc_cdp_events = True
else:
uc_cdp_events = False
if undetectable and browser != "chrome":
if (
undetectable
and browser not in ["chrome", "opera", "brave", "comet", "atlas"]
):
message = (
'\n Undetected-Chromedriver Mode ONLY supports Chrome!'
'\n ("uc=True" / "undetectable=True" / "--uc")'
Expand Down