Skip to content

Commit 32960b6

Browse files
committedFeb 13, 2025
Update CDP Mode
1 parent 291167e commit 32960b6

File tree

2 files changed

+19
-12
lines changed

2 files changed

+19
-12
lines changed
 

‎seleniumbase/undetected/__init__.py

+16-10
Original file line numberDiff line numberDiff line change
@@ -454,17 +454,20 @@ def reconnect(self, timeout=0.1):
454454
self.start_session()
455455
time.sleep(0.0075)
456456
with suppress(Exception):
457-
for i in range(5):
458-
if self.current_url.startswith("chrome-extension://"):
457+
for window_handle in self.window_handles:
458+
self.switch_to.window(window_handle)
459+
if self.current_url.startswith(
460+
"chrome-extension://"
461+
):
459462
self.close()
460463
if self.service.is_connectable():
461464
self.stop_client()
462465
self.service.stop()
463466
self.service.start()
464467
self.start_session()
465-
time.sleep(0.0075)
466-
else:
467-
break
468+
time.sleep(0.003)
469+
with suppress(Exception):
470+
self.switch_to.window(self.window_handles[-1])
468471
self._is_connected = True
469472

470473
def disconnect(self):
@@ -487,17 +490,20 @@ def connect(self):
487490
self.start_session()
488491
time.sleep(0.0075)
489492
with suppress(Exception):
490-
for i in range(5):
491-
if self.current_url.startswith("chrome-extension://"):
493+
for window_handle in self.window_handles:
494+
self.switch_to.window(window_handle)
495+
if self.current_url.startswith(
496+
"chrome-extension://"
497+
):
492498
self.close()
493499
if self.service.is_connectable():
494500
self.stop_client()
495501
self.service.stop()
496502
self.service.start()
497503
self.start_session()
498-
time.sleep(0.0075)
499-
else:
500-
break
504+
time.sleep(0.003)
505+
with suppress(Exception):
506+
self.switch_to.window(self.window_handles[-1])
501507
self._is_connected = True
502508

503509
def start_session(self, capabilities=None):

‎seleniumbase/undetected/webelement.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,11 @@ def uc_click(
2626
driver.js_click(selector, by=by, timeout=1)
2727
else:
2828
super().click()
29+
driver = self._parent
2930
if not reconnect_time:
30-
self._parent.reconnect(0.5)
31+
driver.reconnect(0.5)
3132
else:
32-
self._parent.reconnect(reconnect_time)
33+
driver.reconnect(reconnect_time)
3334

3435
def uc_reconnect(self, reconnect_time=None):
3536
if not reconnect_time:

0 commit comments

Comments
 (0)
Please sign in to comment.