seleniumbase 4.37.8__py3-none-any.whl → 4.37.9__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.
- seleniumbase/__version__.py +1 -1
- seleniumbase/core/browser_launcher.py +6 -4
- seleniumbase/core/sb_cdp.py +4 -4
- seleniumbase/fixtures/base_case.py +3 -3
- seleniumbase/undetected/cdp_driver/browser.py +21 -0
- seleniumbase/undetected/cdp_driver/cdp_util.py +4 -0
- seleniumbase/undetected/cdp_driver/tab.py +15 -5
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/METADATA +1 -1
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/RECORD +13 -13
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/WHEEL +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/licenses/LICENSE +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.9.dist-info}/top_level.txt +0 -0
seleniumbase/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.37.
|
2
|
+
__version__ = "4.37.9"
|
@@ -515,7 +515,7 @@ def uc_open_with_reconnect(driver, url, reconnect_time=None):
|
|
515
515
|
return None
|
516
516
|
|
517
517
|
|
518
|
-
def uc_open_with_cdp_mode(driver, url=None):
|
518
|
+
def uc_open_with_cdp_mode(driver, url=None, **kwargs):
|
519
519
|
import asyncio
|
520
520
|
from seleniumbase.undetected.cdp_driver import cdp_util
|
521
521
|
|
@@ -607,7 +607,9 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
607
607
|
loop.run_until_complete(page_tab.activate())
|
608
608
|
|
609
609
|
loop.run_until_complete(driver.cdp_base.update_targets())
|
610
|
-
page = loop.run_until_complete(
|
610
|
+
page = loop.run_until_complete(
|
611
|
+
driver.cdp_base.get(url, **kwargs)
|
612
|
+
)
|
611
613
|
with gui_lock:
|
612
614
|
with suppress(Exception):
|
613
615
|
shared_utils.make_writable(constants.MultiBrowser.PYAUTOGUILOCK)
|
@@ -792,8 +794,8 @@ def uc_open_with_cdp_mode(driver, url=None):
|
|
792
794
|
driver._is_using_cdp = True
|
793
795
|
|
794
796
|
|
795
|
-
def uc_activate_cdp_mode(driver, url=None):
|
796
|
-
uc_open_with_cdp_mode(driver, url=url)
|
797
|
+
def uc_activate_cdp_mode(driver, url=None, **kwargs):
|
798
|
+
uc_open_with_cdp_mode(driver, url=url, **kwargs)
|
797
799
|
|
798
800
|
|
799
801
|
def uc_open_with_disconnect(driver, url, timeout=None):
|
seleniumbase/core/sb_cdp.py
CHANGED
@@ -101,12 +101,12 @@ class CDPMethods():
|
|
101
101
|
element.get_parent = lambda: self.__get_parent(element)
|
102
102
|
return element
|
103
103
|
|
104
|
-
def get(self, url):
|
104
|
+
def get(self, url, **kwargs):
|
105
105
|
url = shared_utils.fix_url_as_needed(url)
|
106
106
|
driver = self.driver
|
107
107
|
if hasattr(driver, "cdp_base"):
|
108
108
|
driver = driver.cdp_base
|
109
|
-
self.loop.run_until_complete(self.page.get(url))
|
109
|
+
self.loop.run_until_complete(self.page.get(url, **kwargs))
|
110
110
|
url_protocol = url.split(":")[0]
|
111
111
|
safe_url = True
|
112
112
|
if url_protocol not in ["about", "data", "chrome"]:
|
@@ -120,8 +120,8 @@ class CDPMethods():
|
|
120
120
|
self.__slow_mode_pause_if_set()
|
121
121
|
self.loop.run_until_complete(self.page.wait())
|
122
122
|
|
123
|
-
def open(self, url):
|
124
|
-
self.get(url)
|
123
|
+
def open(self, url, **kwargs):
|
124
|
+
self.get(url, **kwargs)
|
125
125
|
|
126
126
|
def reload(self, ignore_cache=True, script_to_evaluate_on_load=None):
|
127
127
|
self.loop.run_until_complete(
|
@@ -4870,7 +4870,7 @@ class BaseCase(unittest.TestCase):
|
|
4870
4870
|
script = """document.designMode = 'off';"""
|
4871
4871
|
self.execute_script(script)
|
4872
4872
|
|
4873
|
-
def activate_cdp_mode(self, url=None):
|
4873
|
+
def activate_cdp_mode(self, url=None, **kwargs):
|
4874
4874
|
if hasattr(self.driver, "_is_using_uc") and self.driver._is_using_uc:
|
4875
4875
|
if self.__is_cdp_swap_needed():
|
4876
4876
|
return # CDP Mode is already active
|
@@ -4879,10 +4879,10 @@ class BaseCase(unittest.TestCase):
|
|
4879
4879
|
current_url = self.get_current_url()
|
4880
4880
|
if not current_url.startswith(("about", "data", "chrome")):
|
4881
4881
|
self.get_new_driver(undetectable=True)
|
4882
|
-
self.driver.uc_open_with_cdp_mode(url)
|
4882
|
+
self.driver.uc_open_with_cdp_mode(url, **kwargs)
|
4883
4883
|
else:
|
4884
4884
|
self.get_new_driver(undetectable=True)
|
4885
|
-
self.driver.uc_open_with_cdp_mode(url)
|
4885
|
+
self.driver.uc_open_with_cdp_mode(url, **kwargs)
|
4886
4886
|
self.cdp = self.driver.cdp
|
4887
4887
|
|
4888
4888
|
def activate_recorder(self):
|
@@ -256,6 +256,7 @@ class Browser:
|
|
256
256
|
url="about:blank",
|
257
257
|
new_tab: bool = False,
|
258
258
|
new_window: bool = False,
|
259
|
+
**kwargs,
|
259
260
|
) -> tab.Tab:
|
260
261
|
"""Top level get. Utilizes the first tab to retrieve given url.
|
261
262
|
Convenience function known from selenium.
|
@@ -309,6 +310,26 @@ class Browser:
|
|
309
310
|
and sb_config._cdp_geolocation
|
310
311
|
):
|
311
312
|
_cdp_geolocation = sb_config._cdp_geolocation
|
313
|
+
if "timezone" in kwargs:
|
314
|
+
_cdp_timezone = kwargs["timezone"]
|
315
|
+
elif "tzone" in kwargs:
|
316
|
+
_cdp_timezone = kwargs["tzone"]
|
317
|
+
if "user_agent" in kwargs:
|
318
|
+
_cdp_user_agent = kwargs["user_agent"]
|
319
|
+
elif "agent" in kwargs:
|
320
|
+
_cdp_user_agent = kwargs["agent"]
|
321
|
+
if "locale" in kwargs:
|
322
|
+
_cdp_locale = kwargs["locale"]
|
323
|
+
elif "lang" in kwargs:
|
324
|
+
_cdp_locale = kwargs["lang"]
|
325
|
+
if "platform" in kwargs:
|
326
|
+
_cdp_platform = kwargs["platform"]
|
327
|
+
elif "plat" in kwargs:
|
328
|
+
_cdp_platform = kwargs["plat"]
|
329
|
+
if "geolocation" in kwargs:
|
330
|
+
_cdp_geolocation = kwargs["geolocation"]
|
331
|
+
elif "geoloc" in kwargs:
|
332
|
+
_cdp_geolocation = kwargs["geoloc"]
|
312
333
|
if _cdp_timezone:
|
313
334
|
await connection.send(cdp.page.navigate("about:blank"))
|
314
335
|
await connection.set_timezone(_cdp_timezone)
|
@@ -383,6 +383,10 @@ async def start(
|
|
383
383
|
sb_config._cdp_user_agent = None
|
384
384
|
if "platform" in kwargs:
|
385
385
|
sb_config._cdp_platform = kwargs["platform"]
|
386
|
+
elif "plat" in kwargs:
|
387
|
+
sb_config._cdp_platform = kwargs["plat"]
|
388
|
+
else:
|
389
|
+
sb_config._cdp_platform = None
|
386
390
|
return driver
|
387
391
|
|
388
392
|
|
@@ -338,6 +338,7 @@ class Tab(Connection):
|
|
338
338
|
url="about:blank",
|
339
339
|
new_tab: bool = False,
|
340
340
|
new_window: bool = False,
|
341
|
+
**kwargs,
|
341
342
|
):
|
342
343
|
"""
|
343
344
|
Top level get. Utilizes the first tab to retrieve the given url.
|
@@ -359,14 +360,23 @@ class Tab(Connection):
|
|
359
360
|
if new_tab:
|
360
361
|
if hasattr(sb_config, "incognito") and sb_config.incognito:
|
361
362
|
return await self.browser.get(
|
362
|
-
url, new_tab=False, new_window=True
|
363
|
+
url, new_tab=False, new_window=True, **kwargs
|
363
364
|
)
|
364
365
|
else:
|
365
|
-
return await self.browser.get(
|
366
|
+
return await self.browser.get(
|
367
|
+
url, new_tab, new_window, **kwargs
|
368
|
+
)
|
366
369
|
else:
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
+
if not kwargs:
|
371
|
+
frame_id, loader_id, *_ = await self.send(
|
372
|
+
cdp.page.navigate(url)
|
373
|
+
)
|
374
|
+
await self
|
375
|
+
return self
|
376
|
+
else:
|
377
|
+
return await self.browser.get(
|
378
|
+
url, new_tab, new_window, **kwargs
|
379
|
+
)
|
370
380
|
|
371
381
|
async def query_selector_all(
|
372
382
|
self,
|
@@ -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=
|
6
|
+
seleniumbase/__version__.py,sha256=pNcw1WniQ2UcslAmruJFnFdp-zeDrlpwvwo4_6jutVE,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
|
@@ -36,7 +36,7 @@ seleniumbase/console_scripts/sb_print.py,sha256=tNy-bMDgwHJO3bZxMpmo9weSE8uhbH0C
|
|
36
36
|
seleniumbase/console_scripts/sb_recorder.py,sha256=fnHb5-kh11Hit-E9Ha-e4QXzqLcZvtij6mb5qNd4B1Q,11032
|
37
37
|
seleniumbase/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
38
38
|
seleniumbase/core/application_manager.py,sha256=e_0sjtI8cjY5BNyZj1QBR0j6_oCScxGmSXYEpcYwuZE,576
|
39
|
-
seleniumbase/core/browser_launcher.py,sha256=
|
39
|
+
seleniumbase/core/browser_launcher.py,sha256=_alCSt0pJfHh9jAai4tLDRdqlH0P3cPlK93C7a-MK08,240019
|
40
40
|
seleniumbase/core/capabilities_parser.py,sha256=meIS2uHapTCq2ldfNAToC7r0cKmZDRXuYNKExM1GHDY,6038
|
41
41
|
seleniumbase/core/colored_traceback.py,sha256=DrRWfg7XEnKcgY59Xj7Jdk09H-XqHYBSUpB-DiZt6iY,2020
|
42
42
|
seleniumbase/core/create_db_tables.sql,sha256=VWPtrdiW_HQ6yETHjqTu-VIrTwvd8I8o1NfBeaVSHpU,972
|
@@ -50,7 +50,7 @@ seleniumbase/core/proxy_helper.py,sha256=4VkpMwavz0fx8wcOqJ_jyBT0HIXwcxmAcpd1gjJ
|
|
50
50
|
seleniumbase/core/recorder_helper.py,sha256=fNGjbapXmEsht54x1o6Igk198QdnPxDDnjUOzQxNhNQ,25055
|
51
51
|
seleniumbase/core/report_helper.py,sha256=AIl6Qava2yW1uSzbLpJBlPlYDz0KE-rVhogh8hsGWBo,12201
|
52
52
|
seleniumbase/core/s3_manager.py,sha256=z_4qx2jI_gtK5r3niGXgEOBpfMUicUCOciowai50MP4,3529
|
53
|
-
seleniumbase/core/sb_cdp.py,sha256=
|
53
|
+
seleniumbase/core/sb_cdp.py,sha256=zgkVXOhwf94NGdsUO0eM8yVUS3s5FzSuAPJNsz3lrZo,86452
|
54
54
|
seleniumbase/core/sb_driver.py,sha256=yvTDRblBzG6bDX7XcLiAA6QcBelSJj_HHL_04lcfeeE,13760
|
55
55
|
seleniumbase/core/session_helper.py,sha256=s9zD3PVZEWVzG2h81cCUskbNWLfdjC_LwwQjKptHCak,558
|
56
56
|
seleniumbase/core/settings_parser.py,sha256=gqVohHVlE_5L5Cqe2L24uYrRzvoK-saX8E_Df7_-_3I,7609
|
@@ -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=
|
68
|
+
seleniumbase/fixtures/base_case.py,sha256=zMRs7mSiWSpqxComRq8Ye7_xl7mvdzs7cIsstyWIVTI,725952
|
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
|
@@ -115,12 +115,12 @@ seleniumbase/undetected/reactor.py,sha256=NropaXcO54pzmDq6quR27qPJxab6636H7LRAaq
|
|
115
115
|
seleniumbase/undetected/webelement.py,sha256=OOpUYbEiOG52KsYYyuDW9tYLdA2SMnukvwQHUdPVn9E,1389
|
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
|
-
seleniumbase/undetected/cdp_driver/browser.py,sha256=
|
119
|
-
seleniumbase/undetected/cdp_driver/cdp_util.py,sha256=
|
118
|
+
seleniumbase/undetected/cdp_driver/browser.py,sha256=9JGyDIQftCY-u3ega6gO5PTSxkHs7x9ykJszCdyugLo,32814
|
119
|
+
seleniumbase/undetected/cdp_driver/cdp_util.py,sha256=flVpVu9o_2zgWFZFEkmfp8fJ6ewTTAJuZmiWm4hz-TA,24093
|
120
120
|
seleniumbase/undetected/cdp_driver/config.py,sha256=t8KV1Vqa5SQRBq3-gjkHHmj9h85AplAM01asO3AWufs,12507
|
121
121
|
seleniumbase/undetected/cdp_driver/connection.py,sha256=jccGcDt-TqgknvMNQYpRbhrSMC_74tYs-9YH1NK5UGU,24572
|
122
122
|
seleniumbase/undetected/cdp_driver/element.py,sha256=FIC6v7OmumLCT-_vIc3H4oju_oBbaLpWJUJIKm2c_q4,40467
|
123
|
-
seleniumbase/undetected/cdp_driver/tab.py,sha256=
|
123
|
+
seleniumbase/undetected/cdp_driver/tab.py,sha256=pUqiWYMcTu3JgohuRdLmhgQHcA5_0eUP1RE5plUMV48,53044
|
124
124
|
seleniumbase/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
125
125
|
seleniumbase/utilities/selenium_grid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
126
126
|
seleniumbase/utilities/selenium_grid/download_selenium_server.py,sha256=ZdoInIbhtmdKCIPxxtJHhd2sqotqcNXWMYbwWrkh9O0,1727
|
@@ -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.37.
|
139
|
-
seleniumbase-4.37.
|
140
|
-
seleniumbase-4.37.
|
141
|
-
seleniumbase-4.37.
|
142
|
-
seleniumbase-4.37.
|
143
|
-
seleniumbase-4.37.
|
138
|
+
seleniumbase-4.37.9.dist-info/licenses/LICENSE,sha256=BRblZsX7HyPUjQmYTiyWr_e9tzWvmR3R4SFclM2R3W0,1085
|
139
|
+
seleniumbase-4.37.9.dist-info/METADATA,sha256=MB0UY1SOG39kPLGAxKXloStTGdWspg1pxv6DY5Q62ho,86953
|
140
|
+
seleniumbase-4.37.9.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
|
141
|
+
seleniumbase-4.37.9.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
142
|
+
seleniumbase-4.37.9.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
143
|
+
seleniumbase-4.37.9.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|