seleniumbase 4.25.1__py3-none-any.whl → 4.25.3__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/fixtures/base_case.py +17 -0
- seleniumbase/undetected/webelement.py +4 -1
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/METADATA +31 -26
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/RECORD +9 -9
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/LICENSE +0 -0
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/WHEEL +0 -0
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.25.1.dist-info → seleniumbase-4.25.3.dist-info}/top_level.txt +0 -0
seleniumbase/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.25.
|
2
|
+
__version__ = "4.25.3"
|
@@ -4134,6 +4134,23 @@ class BaseCase(unittest.TestCase):
|
|
4134
4134
|
self.__dont_record_open = True
|
4135
4135
|
self.open(new_start_page)
|
4136
4136
|
self.__dont_record_open = False
|
4137
|
+
if undetectable:
|
4138
|
+
if hasattr(new_driver, "uc_open"):
|
4139
|
+
self.uc_open = new_driver.uc_open
|
4140
|
+
if hasattr(new_driver, "uc_open_with_tab"):
|
4141
|
+
self.uc_open_with_tab = new_driver.uc_open_with_tab
|
4142
|
+
if hasattr(new_driver, "uc_open_with_reconnect"):
|
4143
|
+
self.uc_open_with_reconnect = new_driver.uc_open_with_reconnect
|
4144
|
+
if hasattr(new_driver, "reconnect"):
|
4145
|
+
self.reconnect = new_driver.reconnect
|
4146
|
+
if hasattr(new_driver, "disconnect"):
|
4147
|
+
self.disconnect = new_driver.disconnect
|
4148
|
+
if hasattr(new_driver, "connect"):
|
4149
|
+
self.connect = new_driver.connect
|
4150
|
+
if hasattr(new_driver, "uc_click"):
|
4151
|
+
self.uc_click = new_driver.uc_click
|
4152
|
+
if hasattr(new_driver, "uc_switch_to_frame"):
|
4153
|
+
self.uc_switch_to_frame = new_driver.uc_switch_to_frame
|
4137
4154
|
return new_driver
|
4138
4155
|
|
4139
4156
|
def switch_to_driver(self, driver):
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import re
|
1
2
|
import selenium.webdriver.remote.webelement
|
2
3
|
from seleniumbase.fixtures import js_utils
|
3
4
|
|
@@ -13,10 +14,12 @@ class WebElement(selenium.webdriver.remote.webelement.WebElement):
|
|
13
14
|
):
|
14
15
|
if driver and selector and by:
|
15
16
|
delayed_click = False
|
16
|
-
if tag_name
|
17
|
+
if tag_name in ["span", "button", "div", "a"]:
|
17
18
|
delayed_click = True
|
18
19
|
if delayed_click and ":contains" not in selector:
|
19
20
|
selector = js_utils.convert_to_css_selector(selector, by)
|
21
|
+
selector = re.escape(selector)
|
22
|
+
selector = js_utils.escape_quotes_if_needed(selector)
|
20
23
|
script = 'document.querySelector("%s").click();' % selector
|
21
24
|
js_utils.call_me_later(driver, script, 111)
|
22
25
|
else:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.25.
|
3
|
+
Version: 4.25.3
|
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
|
@@ -66,7 +66,7 @@ Requires-Dist: parse >=1.20.1
|
|
66
66
|
Requires-Dist: parse-type >=0.6.2
|
67
67
|
Requires-Dist: pyyaml >=6.0.1
|
68
68
|
Requires-Dist: six ==1.16.0
|
69
|
-
Requires-Dist: idna ==3.
|
69
|
+
Requires-Dist: idna ==3.7
|
70
70
|
Requires-Dist: chardet ==5.2.0
|
71
71
|
Requires-Dist: charset-normalizer ==3.3.2
|
72
72
|
Requires-Dist: requests ==2.31.0
|
@@ -79,7 +79,6 @@ Requires-Dist: wsproto ==1.2.0
|
|
79
79
|
Requires-Dist: cssselect ==1.2.0
|
80
80
|
Requires-Dist: sortedcontainers ==2.4.0
|
81
81
|
Requires-Dist: fasteners ==0.19
|
82
|
-
Requires-Dist: execnet ==2.0.2
|
83
82
|
Requires-Dist: iniconfig ==2.0.0
|
84
83
|
Requires-Dist: py ==1.11.0
|
85
84
|
Requires-Dist: pytest-html ==2.0.1
|
@@ -105,6 +104,7 @@ Requires-Dist: filelock >=3.12.2 ; python_version < "3.8"
|
|
105
104
|
Requires-Dist: platformdirs >=4.0.0 ; python_version < "3.8"
|
106
105
|
Requires-Dist: trio ==0.22.2 ; python_version < "3.8"
|
107
106
|
Requires-Dist: selenium ==4.11.2 ; python_version < "3.8"
|
107
|
+
Requires-Dist: execnet ==2.0.2 ; python_version < "3.8"
|
108
108
|
Requires-Dist: pluggy ==1.2.0 ; python_version < "3.8"
|
109
109
|
Requires-Dist: pytest ==7.4.4 ; python_version < "3.8"
|
110
110
|
Requires-Dist: pytest-metadata ==3.0.0 ; python_version < "3.8"
|
@@ -114,11 +114,12 @@ Requires-Dist: markdown-it-py ==2.2.0 ; python_version < "3.8"
|
|
114
114
|
Requires-Dist: urllib3 <2.3.0,>=1.26.18 ; python_version >= "3.10"
|
115
115
|
Requires-Dist: setuptools >=69.2.0 ; python_version >= "3.8"
|
116
116
|
Requires-Dist: wheel >=0.43.0 ; python_version >= "3.8"
|
117
|
-
Requires-Dist: filelock >=3.13.
|
117
|
+
Requires-Dist: filelock >=3.13.4 ; python_version >= "3.8"
|
118
118
|
Requires-Dist: platformdirs >=4.2.0 ; python_version >= "3.8"
|
119
|
-
Requires-Dist: typing-extensions >=4.
|
119
|
+
Requires-Dist: typing-extensions >=4.11.0 ; python_version >= "3.8"
|
120
120
|
Requires-Dist: trio ==0.25.0 ; python_version >= "3.8"
|
121
121
|
Requires-Dist: selenium ==4.19.0 ; python_version >= "3.8"
|
122
|
+
Requires-Dist: execnet ==2.1.1 ; python_version >= "3.8"
|
122
123
|
Requires-Dist: pluggy ==1.4.0 ; python_version >= "3.8"
|
123
124
|
Requires-Dist: pytest ==8.1.1 ; python_version >= "3.8"
|
124
125
|
Requires-Dist: pytest-metadata ==3.1.1 ; python_version >= "3.8"
|
@@ -180,9 +181,10 @@ Requires-Dist: zstandard ==0.22.0 ; extra == 'selenium-wire'
|
|
180
181
|
|
181
182
|
<h1>SeleniumBase</h1>
|
182
183
|
|
183
|
-
<p align="center"><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/
|
184
|
+
<p align="center"><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/super_logo_sb3.png" alt="SeleniumBase" title="SeleniumBase" width="350" /></a></p>
|
184
185
|
|
185
|
-
|
186
|
+
|
187
|
+
<p align="center" class="hero__title"><b>All-in-one Browser Automation Framework:<br />Web Crawling / Testing / Scraping / Stealth</b></p>
|
186
188
|
|
187
189
|
<p align="center"><a href="https://pypi.python.org/pypi/seleniumbase" target="_blank"><img src="https://img.shields.io/pypi/v/seleniumbase.svg?color=3399EE" alt="PyPI version" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/releases" target="_blank"><img src="https://img.shields.io/github/v/release/seleniumbase/SeleniumBase.svg?color=22AAEE" alt="GitHub version" /></a> <a href="https://seleniumbase.io"><img src="https://img.shields.io/badge/docs-seleniumbase.io-11BBAA.svg" alt="SeleniumBase Docs" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/actions" target="_blank"><img src="https://github.com/seleniumbase/SeleniumBase/workflows/CI%20build/badge.svg" alt="SeleniumBase GitHub Actions" /></a> <a href="https://gitter.im/seleniumbase/SeleniumBase" target="_blank"><img src="https://img.shields.io/gitter/room/seleniumbase/SeleniumBase.svg" alt="Gitter chat"/></a></p>
|
188
190
|
|
@@ -226,7 +228,11 @@ Requires-Dist: zstandard ==0.22.0 ; extra == 'selenium-wire'
|
|
226
228
|
|
227
229
|
--------
|
228
230
|
|
229
|
-
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/**](https://github.com/seleniumbase/SeleniumBase/tree/master/examples)
|
231
|
+
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/** folder](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
|
232
|
+
|
233
|
+
👤 Note that <span translate="no">SeleniumBase</span> <a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md">UC Mode / Stealth Mode has its own ReadMe</a>.
|
234
|
+
|
235
|
+
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover & collect tests automatically).
|
230
236
|
|
231
237
|
<p align="left">📗 Here's <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py">my_first_test.py</a>, which tests login, shopping, and checkout:</p>
|
232
238
|
|
@@ -234,7 +240,7 @@ Requires-Dist: zstandard ==0.22.0 ; extra == 'selenium-wire'
|
|
234
240
|
pytest my_first_test.py
|
235
241
|
```
|
236
242
|
|
237
|
-
<a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py"><img src="https://seleniumbase.github.io/cdn/gif/fast_swag_2.gif" alt="SeleniumBase Test" title="SeleniumBase Test" width="
|
243
|
+
<a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py"><img src="https://seleniumbase.github.io/cdn/gif/fast_swag_2.gif" alt="SeleniumBase Test" title="SeleniumBase Test" width="520" /></a>
|
238
244
|
|
239
245
|
> ``pytest`` uses ``--chrome`` by default unless set differently.
|
240
246
|
|
@@ -246,7 +252,7 @@ pytest my_first_test.py
|
|
246
252
|
pytest test_coffee_cart.py --demo
|
247
253
|
```
|
248
254
|
|
249
|
-
<p align="left"><a href="https://seleniumbase.io/coffee/" target="_blank"><img src="https://seleniumbase.github.io/cdn/gif/coffee_cart.gif" width="
|
255
|
+
<p align="left"><a href="https://seleniumbase.io/coffee/" target="_blank"><img src="https://seleniumbase.github.io/cdn/gif/coffee_cart.gif" width="520" alt="SeleniumBase Coffee Cart Test" title="SeleniumBase Coffee Cart Test" /></a></p>
|
250
256
|
|
251
257
|
> <p>(<code translate="no">--demo</code> mode slows down tests and highlights actions)</p>
|
252
258
|
|
@@ -260,7 +266,7 @@ pytest test_coffee_cart.py --demo
|
|
260
266
|
pytest test_demo_site.py
|
261
267
|
```
|
262
268
|
|
263
|
-
<p align="left"><a href="https://seleniumbase.io/demo_page" target="_blank"><img src="https://seleniumbase.github.io/cdn/gif/demo_page_5.gif" width="
|
269
|
+
<p align="left"><a href="https://seleniumbase.io/demo_page" target="_blank"><img src="https://seleniumbase.github.io/cdn/gif/demo_page_5.gif" width="520" alt="SeleniumBase Example" title="SeleniumBase Example" /></a></p>
|
264
270
|
|
265
271
|
> Easy to type, click, select, toggle, drag & drop, and more.
|
266
272
|
|
@@ -268,7 +274,7 @@ pytest test_demo_site.py
|
|
268
274
|
|
269
275
|
--------
|
270
276
|
|
271
|
-
<p align="left"><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/
|
277
|
+
<p align="left"><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/super_logo_sb3.png" alt="SeleniumBase" title="SeleniumBase" width="232" /></a></p>
|
272
278
|
|
273
279
|
<blockquote>
|
274
280
|
<p dir="auto"><strong>Explore the README:</strong></p>
|
@@ -563,7 +569,7 @@ cd examples/
|
|
563
569
|
pytest my_first_test.py
|
564
570
|
```
|
565
571
|
|
566
|
-
<a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py"><img src="https://seleniumbase.github.io/cdn/gif/fast_swag_2.gif" alt="SeleniumBase Test" title="SeleniumBase Test" width="
|
572
|
+
<a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py"><img src="https://seleniumbase.github.io/cdn/gif/fast_swag_2.gif" alt="SeleniumBase Test" title="SeleniumBase Test" width="520" /></a>
|
567
573
|
|
568
574
|
<p align="left"><b>Here's the code for <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py">my_first_test.py</a>:</b></p>
|
569
575
|
|
@@ -1004,14 +1010,14 @@ python -m http.server 1948
|
|
1004
1010
|
pytest test_suite.py test_image_saving.py --dashboard --rs --headless
|
1005
1011
|
```
|
1006
1012
|
|
1007
|
-
<img src="https://seleniumbase.github.io/cdn/img/dashboard_2.png" alt="The SeleniumBase Dashboard" title="The SeleniumBase Dashboard" width="
|
1013
|
+
<img src="https://seleniumbase.github.io/cdn/img/dashboard_2.png" alt="The SeleniumBase Dashboard" title="The SeleniumBase Dashboard" width="520" />
|
1008
1014
|
|
1009
1015
|
--------
|
1010
1016
|
|
1011
1017
|
<a id="creating_visual_reports"></a>
|
1012
1018
|
<h2><img src="https://seleniumbase.github.io/img/logo7.png" title="SeleniumBase" width="32" /> Generating Test Reports:</h2>
|
1013
1019
|
|
1014
|
-
<h3>🔵
|
1020
|
+
<h3>🔵 <code>pytest</code> HTML Reports:</h3>
|
1015
1021
|
|
1016
1022
|
✅ Using ``--html=report.html`` gives you a fancy report of the name specified after your test suite completes.
|
1017
1023
|
|
@@ -1039,7 +1045,7 @@ You can also use ``--junit-xml=report.xml`` to get an xml report instead. Jenkin
|
|
1039
1045
|
pytest test_suite.py --junit-xml=report.xml
|
1040
1046
|
```
|
1041
1047
|
|
1042
|
-
<h3>🔵 pynose Reports:</h3>
|
1048
|
+
<h3>🔵 <code>pynose</code> Reports:</h3>
|
1043
1049
|
|
1044
1050
|
The ``--report`` option gives you a fancy report after your test suite completes.
|
1045
1051
|
|
@@ -1051,7 +1057,7 @@ pynose test_suite.py --report
|
|
1051
1057
|
|
1052
1058
|
(NOTE: You can add ``--show-report`` to immediately display pynose reports after the test suite completes. Only use ``--show-report`` when running tests locally because it pauses the test run.)
|
1053
1059
|
|
1054
|
-
<h3>🔵
|
1060
|
+
<h3>🔵 <code>behave</code> Dashboard & Reports:</h3>
|
1055
1061
|
|
1056
1062
|
(The [behave_bdd/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples/behave_bdd) folder can be found in the [examples/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples) folder.)
|
1057
1063
|
|
@@ -1059,7 +1065,7 @@ pynose test_suite.py --report
|
|
1059
1065
|
behave behave_bdd/features/ -D dashboard -D headless
|
1060
1066
|
```
|
1061
1067
|
|
1062
|
-
<img src="https://seleniumbase.github.io/cdn/img/sb_behave_dashboard.png" title="SeleniumBase" width="
|
1068
|
+
<img src="https://seleniumbase.github.io/cdn/img/sb_behave_dashboard.png" title="SeleniumBase" width="520">
|
1063
1069
|
|
1064
1070
|
You can also use ``--junit`` to get ``.xml`` reports for each <code translate="no">behave</code> feature. Jenkins can use these files to display better reporting for your tests.
|
1065
1071
|
|
@@ -1123,7 +1129,7 @@ pytest user_agent_test.py --agent="Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1
|
|
1123
1129
|
```
|
1124
1130
|
|
1125
1131
|
|
1126
|
-
<h3><img src="https://seleniumbase.github.io/img/logo7.png" title="SeleniumBase" width="32" /> Handling Pop-Up
|
1132
|
+
<h3><img src="https://seleniumbase.github.io/img/logo7.png" title="SeleniumBase" width="32" /> Handling Pop-Up Alerts:</h3>
|
1127
1133
|
|
1128
1134
|
🔵 <code translate="no">self.accept_alert()</code> automatically waits for and accepts alert pop-ups. <code translate="no">self.dismiss_alert()</code> automatically waits for and dismisses alert pop-ups. On occasion, some methods like <code translate="no">self.click(SELECTOR)</code> might dismiss a pop-up on its own because they call JavaScript to make sure that the <code translate="no">readyState</code> of the page is <code translate="no">complete</code> before advancing. If you're trying to accept a pop-up that got dismissed this way, use this workaround: Call <code translate="no">self.find_element(SELECTOR).click()</code> instead, (which will let the pop-up remain on the screen), and then use <code translate="no">self.accept_alert()</code> to accept the pop-up (<a href="https://github.com/seleniumbase/SeleniumBase/issues/600#issuecomment-647270426">more on that here</a>). If pop-ups are intermittent, wrap code in a try/except block.
|
1129
1135
|
|
@@ -1521,11 +1527,13 @@ pytest --reruns=1 --reruns-delay=1
|
|
1521
1527
|
|
1522
1528
|
<p>
|
1523
1529
|
<div><b>If you see something, say something!</b></div>
|
1524
|
-
<div><a href="https://github.com/seleniumbase/SeleniumBase/issues?q=is%3Aissue+is%3Aclosed"><img src="https://img.shields.io/github/issues-closed-raw/seleniumbase/SeleniumBase.svg?color=22BB88" title="Closed Issues" /></a>
|
1530
|
+
<div><a href="https://github.com/seleniumbase/SeleniumBase/issues?q=is%3Aissue+is%3Aclosed"><img src="https://img.shields.io/github/issues-closed-raw/seleniumbase/SeleniumBase.svg?color=22BB88" title="Closed Issues" /></a> <a href="https://github.com/seleniumbase/SeleniumBase/pulls?q=is%3Apr+is%3Aclosed"><img src="https://img.shields.io/github/issues-pr-closed/seleniumbase/SeleniumBase.svg?logo=github&logoColor=white&color=22BB99" title="Closed Pull Requests" /></a></div>
|
1525
1531
|
</p>
|
1526
1532
|
|
1527
1533
|
<p align="left"><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/sb_logo_10t.png" alt="SeleniumBase" title="SeleniumBase" width="266" /></a></p>
|
1528
1534
|
|
1535
|
+
<a href="https://pypi.org/project/seleniumbase/" target="_blank"><img src="https://img.shields.io/pypi/pyversions/seleniumbase.svg?color=22AAEE&logo=python&logoColor=FEDC54" title="Supported Python Versions" /></a>
|
1536
|
+
|
1529
1537
|
<p><div>
|
1530
1538
|
<span><a href="https://www.youtube.com/playlist?list=PLp9uKicxkBc5UIlGi2BuE3aWC7JyXpD3m"><img src="https://seleniumbase.github.io/cdn/img/youtube.png" title="SeleniumBase Playlist on YouTube" alt="SeleniumBase Playlist on YouTube" width="68" /></a></span>
|
1531
1539
|
<span><a href="https://github.com/seleniumbase/SeleniumBase"><img src="https://seleniumbase.github.io/img/social/share_github.svg" title="SeleniumBase on GitHub" alt="SeleniumBase on GitHub" width="62" /></a></span>
|
@@ -1535,11 +1543,8 @@ pytest --reruns=1 --reruns-delay=1
|
|
1535
1543
|
|
1536
1544
|
<p><div><b><a href="https://github.com/mdmintz">https://github.com/mdmintz</a></b></div></p>
|
1537
1545
|
|
1538
|
-
<div><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/
|
1546
|
+
<div><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/super_logo_sb3.png" title="SeleniumBase" width="240" /></a></div>
|
1547
|
+
<div><a href="https://seleniumbase.io"><img src="https://img.shields.io/badge/docs-seleniumbase.io-11BBAA.svg" alt="SeleniumBase Docs" /></a></div> <div><a href="https://github.com/seleniumbase/SeleniumBase"><img src="https://img.shields.io/badge/tested%20with-SeleniumBase-04C38E.svg" alt="Tested with SeleniumBase" /></a></div> <div><a href="https://github.com/seleniumbase/SeleniumBase/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-22BBCC.svg" title="SeleniumBase" /></a> <a href="https://gitter.im/seleniumbase/SeleniumBase" target="_blank"><img src="https://img.shields.io/gitter/room/seleniumbase/SeleniumBase.svg" alt="Gitter chat"/></a></div>
|
1539
1548
|
<div><a href="https://pepy.tech/project/seleniumbase" target="_blank"><img src="https://static.pepy.tech/badge/seleniumbase" alt="SeleniumBase PyPI downloads" /></a></div>
|
1540
1549
|
<div><a href="https://github.com/seleniumbase/SeleniumBase/stargazers"><img src="https://img.shields.io/github/stars/seleniumbase/seleniumbase.svg?color=19A57B" title="Stargazers" /></a></div>
|
1541
|
-
|
1542
|
-
--------
|
1543
|
-
|
1544
|
-
<p><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/super_logo_sb.png" alt="SeleniumBase" title="SeleniumBase" width="300" /></a></p>
|
1545
|
-
<p><a href="https://pypi.org/project/seleniumbase/" target="_blank"><img src="https://img.shields.io/pypi/pyversions/seleniumbase.svg?color=22AAEE&logo=python&logoColor=FEDC54" title="Supported Python Versions" /></a></p>
|
1550
|
+
<div align="left"><img src="https://views.whatilearened.today/views/github/seleniumbase/SeleniumBase.svg" width="124px" height="28px" alt="Views" /></div>
|
@@ -5,7 +5,7 @@ sbase/steps.py,sha256=bKT_u5bJkKzYWEuAXi9NVVRYYxQRCM1_YJUrNFFRVPY,42865
|
|
5
5
|
seleniumbase/ReadMe.md,sha256=4nEdto4d0Ch0Zneg0yAC-RBBdqRqPUP0SCo-ze_XDPM,3612
|
6
6
|
seleniumbase/__init__.py,sha256=Mw4ShIWUF2Efjx-JuwUQLWF9nIbxcX-vu9AOGBp32ec,2123
|
7
7
|
seleniumbase/__main__.py,sha256=dn1p6dgCchmcH1zzTzzQvFwwdQQqnTGH6ULV9m4hv24,654
|
8
|
-
seleniumbase/__version__.py,sha256=
|
8
|
+
seleniumbase/__version__.py,sha256=7gBGyLJegEYspcSDZAO4irrN9kgCPbW_2T4jeHjy0gc,46
|
9
9
|
seleniumbase/behave/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
10
10
|
seleniumbase/behave/behave_helper.py,sha256=elkl8P9eLulRAioLstE9baYNM9N_PHBmAOcajX-pH_Y,24198
|
11
11
|
seleniumbase/behave/behave_sb.py,sha256=rpSKGufjzKeoiTqsr1HChNu1fY68CMirr5mgff--LHs,56291
|
@@ -70,7 +70,7 @@ seleniumbase/extensions/disable_csp.zip,sha256=YMifIIgEBiLrEFrS1sfW4Exh4br1V4oK1
|
|
70
70
|
seleniumbase/extensions/recorder.zip,sha256=dE3-vt1lsIyMbz3MD0WboizA5KiR3SH2jxAMrC0T_cU,11908
|
71
71
|
seleniumbase/extensions/sbase_ext.zip,sha256=3s1N8zrVaMz8RQEOIoBzC3KDjtmHwVZRvVsX25Odr_s,8175
|
72
72
|
seleniumbase/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
73
|
-
seleniumbase/fixtures/base_case.py,sha256=
|
73
|
+
seleniumbase/fixtures/base_case.py,sha256=3IkDFD7nEBv6RXdX3XUva98UXQS8Flfl5x-qwXlb9Lk,688938
|
74
74
|
seleniumbase/fixtures/constants.py,sha256=Uvr5-Z8ZfiE2-lIqJS1CQ0tkmQ6qJYooCOTo_HMleo4,13348
|
75
75
|
seleniumbase/fixtures/css_to_xpath.py,sha256=9ouDB1xl4MJ2os6JOgTIAyHKOQfuxtxvXC3O5hSnEKA,1954
|
76
76
|
seleniumbase/fixtures/errors.py,sha256=KyxuEVx_e3MPhVrJfNIa_3ltMpbCFxfy_jxK8RFNTns,555
|
@@ -120,7 +120,7 @@ seleniumbase/undetected/dprocess.py,sha256=WWQ_X_-Q7Lfx1m6oxkYHU0eTIc76Jodph4n1Q
|
|
120
120
|
seleniumbase/undetected/options.py,sha256=SGuz8iqlVPYN7IexNiGauupWF0xP3mqO72-9tgIqeuI,2999
|
121
121
|
seleniumbase/undetected/patcher.py,sha256=u8X3uFBCTJ4XcU09AWpbDyPc-dm2LM-YeuciCp5AEdM,10853
|
122
122
|
seleniumbase/undetected/reactor.py,sha256=UT1pEnGaTPZT7-0-xKROk9_eWDZueGzSUrCksc22nyA,2883
|
123
|
-
seleniumbase/undetected/webelement.py,sha256=
|
123
|
+
seleniumbase/undetected/webelement.py,sha256=uD_XuJBG1RS42rDyx6br17FNvdgqXzJsntCgYeoWtQc,1356
|
124
124
|
seleniumbase/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
125
125
|
seleniumbase/utilities/selenium_grid/ReadMe.md,sha256=Uqvn4KmhaMY_jrhcsxL2WptCukPq1J3Yz-9WenCXEu0,3599
|
126
126
|
seleniumbase/utilities/selenium_grid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -137,9 +137,9 @@ seleniumbase/utilities/selenium_grid/start-grid-hub.sh,sha256=KADv0RUHONLL2_I443
|
|
137
137
|
seleniumbase/utilities/selenium_ide/ReadMe.md,sha256=hznGeuMpkIimqMiZBW-4goIy2ltW4l8X9kb0YSPUQfE,4483
|
138
138
|
seleniumbase/utilities/selenium_ide/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
139
139
|
seleniumbase/utilities/selenium_ide/convert_ide.py,sha256=pZFnqEJQEKZPyNFjkLD29s2HPQgCrWW9XJWpCPhWOoM,31691
|
140
|
-
seleniumbase-4.25.
|
141
|
-
seleniumbase-4.25.
|
142
|
-
seleniumbase-4.25.
|
143
|
-
seleniumbase-4.25.
|
144
|
-
seleniumbase-4.25.
|
145
|
-
seleniumbase-4.25.
|
140
|
+
seleniumbase-4.25.3.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
|
141
|
+
seleniumbase-4.25.3.dist-info/METADATA,sha256=CtIdClnUAWQ2BnA220jcUXfKML1yh6A3oivjgpFYbOM,84811
|
142
|
+
seleniumbase-4.25.3.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
143
|
+
seleniumbase-4.25.3.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
144
|
+
seleniumbase-4.25.3.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
145
|
+
seleniumbase-4.25.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|