seleniumbase 4.36.5__py3-none-any.whl → 4.37.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  # seleniumbase package
2
- __version__ = "4.36.5"
2
+ __version__ = "4.37.1"
@@ -4871,6 +4871,13 @@ class BaseCase(unittest.TestCase):
4871
4871
 
4872
4872
  def activate_cdp_mode(self, url=None):
4873
4873
  if hasattr(self.driver, "_is_using_uc") and self.driver._is_using_uc:
4874
+ if self.__is_cdp_swap_needed():
4875
+ return # CDP Mode is already active
4876
+ if not self.is_connected():
4877
+ self.driver.connect()
4878
+ current_url = self.get_current_url()
4879
+ if not current_url.startswith(("about", "data", "chrome")):
4880
+ self.get_new_driver(undetectable=True)
4874
4881
  self.driver.uc_open_with_cdp_mode(url)
4875
4882
  else:
4876
4883
  self.get_new_driver(undetectable=True)
@@ -441,7 +441,13 @@ class Chrome(selenium.webdriver.chrome.webdriver.WebDriver):
441
441
  with suppress(Exception):
442
442
  if self.service.is_connectable():
443
443
  self.stop_client()
444
- self.service.stop()
444
+ try:
445
+ self.service.send_remote_shutdown_command()
446
+ except TypeError:
447
+ pass
448
+ finally:
449
+ with suppress(Exception):
450
+ self.service._terminate_process()
445
451
  if isinstance(timeout, str):
446
452
  if timeout.lower() == "breakpoint":
447
453
  breakpoint() # To continue:
@@ -466,7 +472,13 @@ class Chrome(selenium.webdriver.chrome.webdriver.WebDriver):
466
472
  self.close()
467
473
  if self.service.is_connectable():
468
474
  self.stop_client()
469
- self.service.stop()
475
+ try:
476
+ self.service.send_remote_shutdown_command()
477
+ except TypeError:
478
+ pass
479
+ finally:
480
+ with suppress(Exception):
481
+ self.service._terminate_process()
470
482
  self.service.start()
471
483
  self.start_session()
472
484
  time.sleep(0.003)
@@ -482,7 +494,13 @@ class Chrome(selenium.webdriver.chrome.webdriver.WebDriver):
482
494
  if self.service.is_connectable():
483
495
  self.stop_client()
484
496
  time.sleep(0.003)
485
- self.service.stop()
497
+ try:
498
+ self.service.send_remote_shutdown_command()
499
+ except TypeError:
500
+ pass
501
+ finally:
502
+ with suppress(Exception):
503
+ self.service._terminate_process()
486
504
  self._is_connected = False
487
505
 
488
506
  def connect(self):
@@ -507,7 +525,13 @@ class Chrome(selenium.webdriver.chrome.webdriver.WebDriver):
507
525
  self.close()
508
526
  if self.service.is_connectable():
509
527
  self.stop_client()
510
- self.service.stop()
528
+ try:
529
+ self.service.send_remote_shutdown_command()
530
+ except TypeError:
531
+ pass
532
+ finally:
533
+ with suppress(Exception):
534
+ self.service._terminate_process()
511
535
  self.service.start()
512
536
  self.start_session()
513
537
  time.sleep(0.003)
@@ -539,7 +563,13 @@ class Chrome(selenium.webdriver.chrome.webdriver.WebDriver):
539
563
  logger.debug("Stopping webdriver service")
540
564
  with suppress(Exception):
541
565
  self.stop_client()
542
- self.service.stop()
566
+ try:
567
+ self.service.send_remote_shutdown_command()
568
+ except TypeError:
569
+ pass
570
+ finally:
571
+ with suppress(Exception):
572
+ self.service._terminate_process()
543
573
  with suppress(Exception):
544
574
  if self.reactor and isinstance(self.reactor, Reactor):
545
575
  logger.debug("Shutting down Reactor")
@@ -406,7 +406,13 @@ async def create_from_driver(driver) -> Browser:
406
406
  browser = await start(conf)
407
407
  browser._process_pid = driver.browser_pid
408
408
  # Stop chromedriver binary
409
- driver.service.stop()
409
+ try:
410
+ driver.service.send_remote_shutdown_command()
411
+ except TypeError:
412
+ pass
413
+ finally:
414
+ with suppress(Exception):
415
+ driver.service._terminate_process()
410
416
  driver.browser_pid = -1
411
417
  driver.user_data_dir = None
412
418
  return browser
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: seleniumbase
3
- Version: 4.36.5
3
+ Version: 4.37.1
4
4
  Summary: A complete web automation framework for end-to-end testing.
5
5
  Home-page: https://github.com/seleniumbase/SeleniumBase
6
6
  Author: Michael Mintz
@@ -105,7 +105,7 @@ Requires-Dist: trio-websocket==0.12.2
105
105
  Requires-Dist: wsproto==1.2.0
106
106
  Requires-Dist: websocket-client==1.8.0
107
107
  Requires-Dist: selenium==4.27.1; python_version < "3.9"
108
- Requires-Dist: selenium==4.30.0; python_version >= "3.9"
108
+ Requires-Dist: selenium==4.31.0; python_version >= "3.9"
109
109
  Requires-Dist: cssselect==1.2.0; python_version < "3.9"
110
110
  Requires-Dist: cssselect==1.3.0; python_version >= "3.9"
111
111
  Requires-Dist: sortedcontainers==2.4.0
@@ -136,7 +136,7 @@ Provides-Extra: coverage
136
136
  Requires-Dist: coverage>=7.6.1; python_version < "3.9" and extra == "coverage"
137
137
  Requires-Dist: coverage>=7.8.0; python_version >= "3.9" and extra == "coverage"
138
138
  Requires-Dist: pytest-cov>=5.0.0; python_version < "3.9" and extra == "coverage"
139
- Requires-Dist: pytest-cov>=6.1.0; python_version >= "3.9" and extra == "coverage"
139
+ Requires-Dist: pytest-cov>=6.1.1; python_version >= "3.9" and extra == "coverage"
140
140
  Provides-Extra: flake8
141
141
  Requires-Dist: flake8==5.0.4; python_version < "3.9" and extra == "flake8"
142
142
  Requires-Dist: flake8==7.2.0; python_version >= "3.9" and extra == "flake8"
@@ -3,7 +3,7 @@ sbase/__main__.py,sha256=G0bVB1-DM4PGwQ1KyOupaWCs4ePbChZNNWuX2htim5U,647
3
3
  sbase/steps.py,sha256=_WvAjydKqZfTdnZW9LPKkRty-g-lfdUPmLqnZj6ulcs,43013
4
4
  seleniumbase/__init__.py,sha256=JFEY9P5QJqsa1M6ghzLMH2eIPQyh85iglCaQwg8Y8z4,2498
5
5
  seleniumbase/__main__.py,sha256=dn1p6dgCchmcH1zzTzzQvFwwdQQqnTGH6ULV9m4hv24,654
6
- seleniumbase/__version__.py,sha256=E0FjVs1Zo_rK39vc7dW9lqIRPHWS6Fabw-mxaGe9vtA,46
6
+ seleniumbase/__version__.py,sha256=SfQ2g9CE1hySBUvIiMmyBJerWmxZm6mNS8pujipJXSY,46
7
7
  seleniumbase/behave/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  seleniumbase/behave/behave_helper.py,sha256=elkl8P9eLulRAioLstE9baYNM9N_PHBmAOcajX-pH_Y,24198
9
9
  seleniumbase/behave/behave_sb.py,sha256=qQF85LoohJBfrPK5ZcPi50v-pWtOrC9qcN1B3Ki_3tY,59401
@@ -65,7 +65,7 @@ seleniumbase/extensions/disable_csp.zip,sha256=5RvomXnm2PdivUVcxTV6jfvD8WhTEsQYH
65
65
  seleniumbase/extensions/recorder.zip,sha256=OOyzF-Ize2cSRu1CqhzSAq5vusI9hqLLd2OIApUHesI,11918
66
66
  seleniumbase/extensions/sbase_ext.zip,sha256=3s1N8zrVaMz8RQEOIoBzC3KDjtmHwVZRvVsX25Odr_s,8175
67
67
  seleniumbase/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
- seleniumbase/fixtures/base_case.py,sha256=xkdMH172rqMbdW9Y7foBXrb5SxwpFAbwBmmi4Y4QuaU,725334
68
+ seleniumbase/fixtures/base_case.py,sha256=tv65GtPheFm9T2B2VtGP8ooDRejOtyAizcICYw7I_GY,725685
69
69
  seleniumbase/fixtures/constants.py,sha256=WMrItuNyKq3XVJ64NluLIRc4gJCxDw8K8qXED0b9S2w,13752
70
70
  seleniumbase/fixtures/css_to_xpath.py,sha256=9ouDB1xl4MJ2os6JOgTIAyHKOQfuxtxvXC3O5hSnEKA,1954
71
71
  seleniumbase/fixtures/errors.py,sha256=KyxuEVx_e3MPhVrJfNIa_3ltMpbCFxfy_jxK8RFNTns,555
@@ -106,7 +106,7 @@ seleniumbase/translate/portuguese.py,sha256=x3P4qxp56UiI41GoaL7JbUvFRYsgXU1EKjTg
106
106
  seleniumbase/translate/russian.py,sha256=TyN9n0b4GRWDEYnHRGw1rfNAscdDmP3F3Y3aySM3C7s,27978
107
107
  seleniumbase/translate/spanish.py,sha256=hh3xgW1Pq122SHYVvJAxFaXhFrjniOVncVbJbfWqOUM,25528
108
108
  seleniumbase/translate/translator.py,sha256=wPhZH6e5NhmebYL1kP2eGxUcVy1gfTb6XCH8ATEPpxE,49238
109
- seleniumbase/undetected/__init__.py,sha256=IjjcNzpv-NZVGQb1SL2BGAUFowwkhfjZ_1l1pKDsjYk,24871
109
+ seleniumbase/undetected/__init__.py,sha256=xvbUlPJEF7nAkdy9bxca5W-ltX6cI38lMyJGwVetPPM,26230
110
110
  seleniumbase/undetected/cdp.py,sha256=RLpwZnhUvmK9tgXcZIBBQedwk2q7Jj_EXZkmzI8WUqk,4023
111
111
  seleniumbase/undetected/dprocess.py,sha256=83EV8ZHJWHG1TSUv9JNClBhdgiBXlkCc6mJ--HsoP3k,1681
112
112
  seleniumbase/undetected/options.py,sha256=BoNuwhrG7oOvuLvTwkvsWCF36pMkS1tHCG-XpP4_EkI,3001
@@ -116,7 +116,7 @@ seleniumbase/undetected/webelement.py,sha256=OOpUYbEiOG52KsYYyuDW9tYLdA2SMnukvwQ
116
116
  seleniumbase/undetected/cdp_driver/__init__.py,sha256=Ga9alwuaZZy4_XOShc0HjgFnNqpPdrcbjAicz5gE7a4,215
117
117
  seleniumbase/undetected/cdp_driver/_contradict.py,sha256=lP4b0h5quAy573ETn_TBbYV889cL1AuPLVInpJ0ZkiU,3183
118
118
  seleniumbase/undetected/cdp_driver/browser.py,sha256=c-9EWqpD2ZtpDg8edMuw9hYa6GuyOP1qxorNjtsWe1U,30457
119
- seleniumbase/undetected/cdp_driver/cdp_util.py,sha256=6-0-Dq_dFAOXQ5_a58i9y93zRqWUrjWoy6Pf_xBoveE,21648
119
+ seleniumbase/undetected/cdp_driver/cdp_util.py,sha256=oKUEHx220PEFvHLW4dz18i4j1Q6HPTdkKx9QOKAVZ3I,21821
120
120
  seleniumbase/undetected/cdp_driver/config.py,sha256=t8KV1Vqa5SQRBq3-gjkHHmj9h85AplAM01asO3AWufs,12507
121
121
  seleniumbase/undetected/cdp_driver/connection.py,sha256=_ounWzQ1m3_t-zJVgOAU2RINiKphfJkw2Qbu-zIoHC0,23359
122
122
  seleniumbase/undetected/cdp_driver/element.py,sha256=FIC6v7OmumLCT-_vIc3H4oju_oBbaLpWJUJIKm2c_q4,40467
@@ -135,9 +135,9 @@ seleniumbase/utilities/selenium_grid/start-grid-hub.bat,sha256=Ftq-GrAKRYH2ssDPr
135
135
  seleniumbase/utilities/selenium_grid/start-grid-hub.sh,sha256=KADv0RUHONLL2_I443QFK8PryBpDmKn5Gy0s4o0vDSM,106
136
136
  seleniumbase/utilities/selenium_ide/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
137
  seleniumbase/utilities/selenium_ide/convert_ide.py,sha256=pZFnqEJQEKZPyNFjkLD29s2HPQgCrWW9XJWpCPhWOoM,31691
138
- seleniumbase-4.36.5.dist-info/licenses/LICENSE,sha256=BRblZsX7HyPUjQmYTiyWr_e9tzWvmR3R4SFclM2R3W0,1085
139
- seleniumbase-4.36.5.dist-info/METADATA,sha256=lhvP06gFpjj-qWS04g89lmUosDlqj8CxN1WjzLGckWQ,86879
140
- seleniumbase-4.36.5.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
141
- seleniumbase-4.36.5.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
142
- seleniumbase-4.36.5.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
143
- seleniumbase-4.36.5.dist-info/RECORD,,
138
+ seleniumbase-4.37.1.dist-info/licenses/LICENSE,sha256=BRblZsX7HyPUjQmYTiyWr_e9tzWvmR3R4SFclM2R3W0,1085
139
+ seleniumbase-4.37.1.dist-info/METADATA,sha256=xB2eYfp3qQlq34bB3xpQSx6vsuhDRTAHdzGf0esqm0M,86879
140
+ seleniumbase-4.37.1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
141
+ seleniumbase-4.37.1.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
142
+ seleniumbase-4.37.1.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
143
+ seleniumbase-4.37.1.dist-info/RECORD,,