seleniumbase 4.37.8__py3-none-any.whl → 4.37.10__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/plugins/sb_manager.py +8 -5
- seleniumbase/undetected/cdp_driver/browser.py +21 -0
- seleniumbase/undetected/cdp_driver/cdp_util.py +4 -0
- seleniumbase/undetected/cdp_driver/connection.py +0 -3
- seleniumbase/undetected/cdp_driver/tab.py +16 -5
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.dist-info}/METADATA +1 -1
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.dist-info}/RECORD +15 -15
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.dist-info}/WHEEL +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.dist-info}/licenses/LICENSE +0 -0
- {seleniumbase-4.37.8.dist-info → seleniumbase-4.37.10.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.10"
|
@@ -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):
|
@@ -1369,12 +1369,15 @@ def SB(
|
|
1369
1369
|
"%s%s%s%s%s"
|
1370
1370
|
% (c1, left_space, end_text, right_space, cr)
|
1371
1371
|
)
|
1372
|
-
if hasattr(
|
1372
|
+
if undetectable and hasattr(sb, "_drivers_browser_map"):
|
1373
1373
|
import asyncio
|
1374
|
-
|
1375
|
-
|
1376
|
-
|
1377
|
-
|
1374
|
+
for driver in sb._drivers_browser_map.keys():
|
1375
|
+
if hasattr(driver, "cdp") and driver.cdp:
|
1376
|
+
asyncio.set_event_loop(driver.cdp.loop)
|
1377
|
+
tasks = [tab.aclose() for tab in driver.cdp.get_tabs()]
|
1378
|
+
tasks.append(driver.cdp.driver.connection.aclose())
|
1379
|
+
driver.cdp.loop.run_until_complete(asyncio.gather(*tasks))
|
1380
|
+
driver.cdp.loop.close()
|
1378
1381
|
gc.collect()
|
1379
1382
|
if test and test_name and not test_passed and raise_test_failure:
|
1380
1383
|
raise exception
|
@@ -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
|
|
@@ -19,7 +19,6 @@ from typing import (
|
|
19
19
|
)
|
20
20
|
import websockets
|
21
21
|
from websockets.protocol import State
|
22
|
-
from seleniumbase import config as sb_config
|
23
22
|
from . import cdp_util as util
|
24
23
|
import mycdp as cdp
|
25
24
|
import mycdp.network
|
@@ -271,7 +270,6 @@ class Connection(metaclass=CantTouchThis):
|
|
271
270
|
max_size=MAX_SIZE,
|
272
271
|
)
|
273
272
|
self.listener = Listener(self)
|
274
|
-
sb_config._cdp_aclose = self.aclose
|
275
273
|
except (Exception,) as e:
|
276
274
|
logger.debug("Exception during opening of websocket: %s", e)
|
277
275
|
if self.listener:
|
@@ -446,7 +444,6 @@ class Connection(metaclass=CantTouchThis):
|
|
446
444
|
if not _is_update:
|
447
445
|
await self._register_handlers()
|
448
446
|
await self.websocket.send(tx.message)
|
449
|
-
sb_config._cdp_aclose = self.aclose
|
450
447
|
try:
|
451
448
|
return await tx
|
452
449
|
except ProtocolException as e:
|
@@ -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,
|
@@ -869,6 +879,7 @@ class Tab(Connection):
|
|
869
879
|
await self.send(
|
870
880
|
cdp.target.close_target(target_id=self.target.target_id)
|
871
881
|
)
|
882
|
+
await self.aclose()
|
872
883
|
await asyncio.sleep(0.1)
|
873
884
|
|
874
885
|
async def get_window(self) -> Tuple[
|
@@ -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=jDe8n1zvjOveWUPBtPnprtARQ-a2p2LPau8n0FGi8dA,47
|
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
|
@@ -90,7 +90,7 @@ seleniumbase/plugins/driver_manager.py,sha256=1l4fxISvGV62gfDxp3yfYE2zz4WKJFLE0t
|
|
90
90
|
seleniumbase/plugins/page_source.py,sha256=loTnXxOj4kxEukuTZEiGyvKBhY3KDVDMnNlHHheTBDE,1889
|
91
91
|
seleniumbase/plugins/pytest_plugin.py,sha256=952AIyaH-PdmNksoeXjzhXxoc8Z53yV-WPjlrHhp2OM,108382
|
92
92
|
seleniumbase/plugins/s3_logging_plugin.py,sha256=WDfertQgGOW_SRJpFMaekYD6vBVW9VO62POtXXy2HCM,2319
|
93
|
-
seleniumbase/plugins/sb_manager.py,sha256=
|
93
|
+
seleniumbase/plugins/sb_manager.py,sha256=kkQiMWWcL4xkeXwEippZzAoKLScCu5YY4JByJmizG_M,57906
|
94
94
|
seleniumbase/plugins/screen_shots.py,sha256=1hrXw-hzuZ1BR6Yh7AyWX2ABnvnP73-RCbwdz958gj4,1127
|
95
95
|
seleniumbase/plugins/selenium_plugin.py,sha256=y0eNco8T4KgGLProLPHPLw479QH5lRms4wqwOnTgkSc,60081
|
96
96
|
seleniumbase/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -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
|
-
seleniumbase/undetected/cdp_driver/connection.py,sha256=
|
121
|
+
seleniumbase/undetected/cdp_driver/connection.py,sha256=DF57pY08fpnazwDuMhYUfbf7oc9XhxkuJ4JQhH9eNoc,24424
|
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=wRfeoJwed9OO7SsvdWRIfRRduNFDT1Rl-mBACHf3ZKM,53077
|
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.10.dist-info/licenses/LICENSE,sha256=BRblZsX7HyPUjQmYTiyWr_e9tzWvmR3R4SFclM2R3W0,1085
|
139
|
+
seleniumbase-4.37.10.dist-info/METADATA,sha256=6ciCn6ndu3YZugzQzVcEWCuBqTd1uQkP27d3ZoPZqao,86954
|
140
|
+
seleniumbase-4.37.10.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
|
141
|
+
seleniumbase-4.37.10.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
142
|
+
seleniumbase-4.37.10.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
143
|
+
seleniumbase-4.37.10.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|