seleniumbase 4.42.2__tar.gz → 4.42.4__tar.gz
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-4.42.2/seleniumbase.egg-info → seleniumbase-4.42.4}/PKG-INFO +14 -11
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/requirements.txt +10 -6
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/__version__.py +1 -1
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/browser_launcher.py +2 -2
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/sb_cdp.py +4 -1
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/cdp_util.py +210 -4
- {seleniumbase-4.42.2 → seleniumbase-4.42.4/seleniumbase.egg-info}/PKG-INFO +14 -11
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase.egg-info/requires.txt +15 -9
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/setup.py +14 -10
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/.gitignore +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/LICENSE +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/MANIFEST.in +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/README.md +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/install.sh +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/pyproject.toml +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/pytest.ini +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/sbase/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/sbase/__main__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/sbase/steps.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/__main__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/behave/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/behave/behave_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/behave/behave_sb.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/behave/steps.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/decorators.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/encryption.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/exceptions.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/obfuscate.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/common/unobfuscate.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/config/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/config/ad_block_list.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/config/proxy_list.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/config/settings.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/logo_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/rich_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/run.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_commander.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_install.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_mkdir.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_objectify.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_print.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/console_scripts/sb_recorder.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/application_manager.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/capabilities_parser.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/colored_traceback.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/create_db_tables.sql +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/detect_b_ver.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/download_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/encoded_images.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/jqc_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/log_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/mysql.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/proxy_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/recorder_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/report_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/s3_manager.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/sb_driver.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/session_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/settings_parser.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/style_sheet.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/testcase_manager.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/tour_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/core/visual_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/drivers/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/drivers/cft_drivers/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/drivers/chs_drivers/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/extensions/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/extensions/ad_block.zip +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/extensions/disable_csp.zip +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/extensions/recorder.zip +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/extensions/sbase_ext.zip +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/base_case.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/constants.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/css_to_xpath.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/errors.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/js_utils.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/page_actions.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/page_utils.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/shared_utils.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/unittest_helper.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/words.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/fixtures/xpath_to_css.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/js_code/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/js_code/active_css_js.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/js_code/live_js.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/js_code/recorder_js.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/masterqa/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/masterqa/master_qa.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/base_plugin.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/basic_test_info.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/driver_manager.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/page_source.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/pytest_plugin.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/sb_manager.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/screen_shots.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/plugins/selenium_plugin.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/resources/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/chinese.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/dutch.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/french.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/italian.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/japanese.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/korean.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/master_dict.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/portuguese.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/russian.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/spanish.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/translate/translator.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/_contradict.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/browser.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/config.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/connection.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/element.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/cdp_driver/tab.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/dprocess.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/options.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/patcher.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/reactor.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/undetected/webelement.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/font_color +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase.egg-info/SOURCES.txt +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase.egg-info/dependency_links.txt +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase.egg-info/entry_points.txt +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/seleniumbase.egg-info/top_level.txt +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/setup.cfg +0 -0
- {seleniumbase-4.42.2 → seleniumbase-4.42.4}/virtualenv_install.sh +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.42.
|
3
|
+
Version: 4.42.4
|
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
|
@@ -28,7 +28,6 @@ Classifier: Environment :: Web Environment
|
|
28
28
|
Classifier: Framework :: Pytest
|
29
29
|
Classifier: Intended Audience :: Developers
|
30
30
|
Classifier: Intended Audience :: Information Technology
|
31
|
-
Classifier: License :: OSI Approved :: MIT License
|
32
31
|
Classifier: Operating System :: MacOS :: MacOS X
|
33
32
|
Classifier: Operating System :: Microsoft :: Windows
|
34
33
|
Classifier: Operating System :: POSIX :: Linux
|
@@ -73,12 +72,14 @@ Requires-Dist: exceptiongroup>=1.3.0
|
|
73
72
|
Requires-Dist: websockets~=13.1; python_version < "3.9"
|
74
73
|
Requires-Dist: websockets>=15.0.1; python_version >= "3.9"
|
75
74
|
Requires-Dist: filelock~=3.16.1; python_version < "3.9"
|
76
|
-
Requires-Dist: filelock
|
75
|
+
Requires-Dist: filelock~=3.19.1; python_version >= "3.9" and python_version < "3.10"
|
76
|
+
Requires-Dist: filelock>=3.20.0; python_version >= "3.10"
|
77
77
|
Requires-Dist: fasteners>=0.20
|
78
78
|
Requires-Dist: mycdp>=1.2.0
|
79
79
|
Requires-Dist: pynose>=1.5.5
|
80
|
-
Requires-Dist: platformdirs
|
81
|
-
Requires-Dist: platformdirs
|
80
|
+
Requires-Dist: platformdirs~=4.3.6; python_version < "3.9"
|
81
|
+
Requires-Dist: platformdirs~=4.4.0; python_version >= "3.9" and python_version < "3.10"
|
82
|
+
Requires-Dist: platformdirs>=4.5.0; python_version >= "3.10"
|
82
83
|
Requires-Dist: typing-extensions~=4.13.2; python_version < "3.9"
|
83
84
|
Requires-Dist: typing-extensions>=4.15.0; python_version >= "3.9"
|
84
85
|
Requires-Dist: sbvirtualdisplay>=1.4.0
|
@@ -91,7 +92,7 @@ Requires-Dist: parse-type>=0.6.6
|
|
91
92
|
Requires-Dist: colorama>=0.4.6
|
92
93
|
Requires-Dist: pyyaml>=6.0.3
|
93
94
|
Requires-Dist: pygments>=2.19.2
|
94
|
-
Requires-Dist: pyreadline3>=3.5.
|
95
|
+
Requires-Dist: pyreadline3>=3.5.4; platform_system == "Windows"
|
95
96
|
Requires-Dist: tabcompleter>=1.4.0
|
96
97
|
Requires-Dist: pdbp>=1.7.1
|
97
98
|
Requires-Dist: idna==3.10
|
@@ -108,7 +109,8 @@ Requires-Dist: trio==0.27.0; python_version < "3.9"
|
|
108
109
|
Requires-Dist: trio<1,>=0.31.0; python_version >= "3.9"
|
109
110
|
Requires-Dist: trio-websocket~=0.12.2
|
110
111
|
Requires-Dist: wsproto==1.2.0
|
111
|
-
Requires-Dist: websocket-client~=1.8.0
|
112
|
+
Requires-Dist: websocket-client~=1.8.0; python_version < "3.9"
|
113
|
+
Requires-Dist: websocket-client~=1.9.0; python_version >= "3.9"
|
112
114
|
Requires-Dist: selenium==4.27.1; python_version < "3.9"
|
113
115
|
Requires-Dist: selenium==4.32.0; python_version >= "3.9" and python_version < "3.10"
|
114
116
|
Requires-Dist: selenium==4.36.0; python_version >= "3.10"
|
@@ -135,10 +137,11 @@ Requires-Dist: soupsieve~=2.8; python_version >= "3.9"
|
|
135
137
|
Requires-Dist: beautifulsoup4~=4.14.2
|
136
138
|
Requires-Dist: pyotp==2.9.0
|
137
139
|
Requires-Dist: python-xlib==0.33; platform_system == "Linux"
|
140
|
+
Requires-Dist: PyAutoGUI>=0.9.54; platform_system == "Linux"
|
138
141
|
Requires-Dist: markdown-it-py==3.0.0; python_version < "3.10"
|
139
142
|
Requires-Dist: markdown-it-py==4.0.0; python_version >= "3.10"
|
140
143
|
Requires-Dist: mdurl==0.1.2
|
141
|
-
Requires-Dist: rich<15,>=14.
|
144
|
+
Requires-Dist: rich<15,>=14.2.0
|
142
145
|
Provides-Extra: allure
|
143
146
|
Requires-Dist: allure-pytest>=2.13.5; extra == "allure"
|
144
147
|
Requires-Dist: allure-python-commons>=2.13.5; extra == "allure"
|
@@ -181,12 +184,12 @@ Requires-Dist: proxy.py==2.4.3; extra == "proxy"
|
|
181
184
|
Provides-Extra: psutil
|
182
185
|
Requires-Dist: psutil==7.1.0; extra == "psutil"
|
183
186
|
Provides-Extra: pyautogui
|
184
|
-
Requires-Dist: PyAutoGUI
|
187
|
+
Requires-Dist: PyAutoGUI>=0.9.54; platform_system != "Linux" and extra == "pyautogui"
|
185
188
|
Provides-Extra: selenium-stealth
|
186
189
|
Requires-Dist: selenium-stealth==1.0.6; extra == "selenium-stealth"
|
187
190
|
Provides-Extra: selenium-wire
|
188
191
|
Requires-Dist: selenium-wire==5.1.0; extra == "selenium-wire"
|
189
|
-
Requires-Dist: pyOpenSSL
|
192
|
+
Requires-Dist: pyOpenSSL>=24.2.1; extra == "selenium-wire"
|
190
193
|
Requires-Dist: pyparsing>=3.1.4; extra == "selenium-wire"
|
191
194
|
Requires-Dist: Brotli==1.1.0; extra == "selenium-wire"
|
192
195
|
Requires-Dist: blinker==1.7.0; extra == "selenium-wire"
|
@@ -195,7 +198,7 @@ Requires-Dist: hpack==4.0.0; extra == "selenium-wire"
|
|
195
198
|
Requires-Dist: hyperframe==6.0.1; extra == "selenium-wire"
|
196
199
|
Requires-Dist: kaitaistruct==0.10; extra == "selenium-wire"
|
197
200
|
Requires-Dist: pyasn1==0.6.1; extra == "selenium-wire"
|
198
|
-
Requires-Dist: zstandard
|
201
|
+
Requires-Dist: zstandard>=0.23.0; extra == "selenium-wire"
|
199
202
|
Dynamic: author
|
200
203
|
Dynamic: author-email
|
201
204
|
Dynamic: classifier
|
@@ -11,12 +11,14 @@ exceptiongroup>=1.3.0
|
|
11
11
|
websockets~=13.1;python_version<"3.9"
|
12
12
|
websockets>=15.0.1;python_version>="3.9"
|
13
13
|
filelock~=3.16.1;python_version<"3.9"
|
14
|
-
filelock
|
14
|
+
filelock~=3.19.1;python_version>="3.9" and python_version<"3.10"
|
15
|
+
filelock>=3.20.0;python_version>="3.10"
|
15
16
|
fasteners>=0.20
|
16
17
|
mycdp>=1.2.0
|
17
18
|
pynose>=1.5.5
|
18
|
-
platformdirs
|
19
|
-
platformdirs
|
19
|
+
platformdirs~=4.3.6;python_version<"3.9"
|
20
|
+
platformdirs~=4.4.0;python_version>="3.9" and python_version<"3.10"
|
21
|
+
platformdirs>=4.5.0;python_version>="3.10"
|
20
22
|
typing-extensions~=4.13.2;python_version<"3.9"
|
21
23
|
typing-extensions>=4.15.0;python_version>="3.9"
|
22
24
|
sbvirtualdisplay>=1.4.0
|
@@ -29,7 +31,7 @@ parse-type>=0.6.6
|
|
29
31
|
colorama>=0.4.6
|
30
32
|
pyyaml>=6.0.3
|
31
33
|
pygments>=2.19.2
|
32
|
-
pyreadline3>=3.5.
|
34
|
+
pyreadline3>=3.5.4;platform_system=="Windows"
|
33
35
|
tabcompleter>=1.4.0
|
34
36
|
pdbp>=1.7.1
|
35
37
|
idna==3.10
|
@@ -46,7 +48,8 @@ trio==0.27.0;python_version<"3.9"
|
|
46
48
|
trio>=0.31.0,<1;python_version>="3.9"
|
47
49
|
trio-websocket~=0.12.2
|
48
50
|
wsproto==1.2.0
|
49
|
-
websocket-client~=1.8.0
|
51
|
+
websocket-client~=1.8.0;python_version<"3.9"
|
52
|
+
websocket-client~=1.9.0;python_version>="3.9"
|
50
53
|
selenium==4.27.1;python_version<"3.9"
|
51
54
|
selenium==4.32.0;python_version>="3.9" and python_version<"3.10"
|
52
55
|
selenium==4.36.0;python_version>="3.10"
|
@@ -73,10 +76,11 @@ soupsieve~=2.8;python_version>="3.9"
|
|
73
76
|
beautifulsoup4~=4.14.2
|
74
77
|
pyotp==2.9.0
|
75
78
|
python-xlib==0.33;platform_system=="Linux"
|
79
|
+
PyAutoGUI>=0.9.54;platform_system=="Linux"
|
76
80
|
markdown-it-py==3.0.0;python_version<"3.10"
|
77
81
|
markdown-it-py==4.0.0;python_version>="3.10"
|
78
82
|
mdurl==0.1.2
|
79
|
-
rich>=14.
|
83
|
+
rich>=14.2.0,<15
|
80
84
|
|
81
85
|
# --- Testing Requirements --- #
|
82
86
|
# ("pip install -r requirements.txt" also installs this, but "pip install -e ." won't.)
|
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.42.
|
2
|
+
__version__ = "4.42.4"
|
@@ -4317,8 +4317,8 @@ def get_local_driver(
|
|
4317
4317
|
sys.argv = sys_args # Put back the original sys args
|
4318
4318
|
|
4319
4319
|
# For Microsoft Edge (Chromium) version 80 or higher
|
4320
|
-
Edge = webdriver.
|
4321
|
-
EdgeOptions = webdriver.
|
4320
|
+
Edge = webdriver.Edge
|
4321
|
+
EdgeOptions = webdriver.EdgeOptions
|
4322
4322
|
if local_edgedriver and os.path.exists(local_edgedriver):
|
4323
4323
|
try:
|
4324
4324
|
make_driver_executable_if_not(local_edgedriver)
|
@@ -712,7 +712,10 @@ class CDPMethods():
|
|
712
712
|
self.__slow_mode_pause_if_set()
|
713
713
|
element = self.find_element(selector, timeout=timeout)
|
714
714
|
element.scroll_into_view()
|
715
|
-
element.
|
715
|
+
if element.tag_name == "div" or element.tag_name == "input":
|
716
|
+
element.mouse_click() # Simulated click (not PyAutoGUI)
|
717
|
+
else:
|
718
|
+
element.click()
|
716
719
|
self.__slow_mode_pause_if_set()
|
717
720
|
self.loop.run_until_complete(self.page.wait())
|
718
721
|
|
@@ -258,13 +258,13 @@ async def start(
|
|
258
258
|
config: Optional[Config] = None,
|
259
259
|
*,
|
260
260
|
user_data_dir: Optional[PathLike] = None,
|
261
|
-
headless: Optional[bool] =
|
262
|
-
incognito: Optional[bool] =
|
263
|
-
guest: Optional[bool] =
|
261
|
+
headless: Optional[bool] = None,
|
262
|
+
incognito: Optional[bool] = None,
|
263
|
+
guest: Optional[bool] = None,
|
264
264
|
browser_executable_path: Optional[PathLike] = None,
|
265
265
|
browser_args: Optional[List[str]] = None,
|
266
266
|
xvfb_metrics: Optional[List[str]] = None, # "Width,Height" for Linux
|
267
|
-
ad_block: Optional[bool] =
|
267
|
+
ad_block: Optional[bool] = None,
|
268
268
|
sandbox: Optional[bool] = True,
|
269
269
|
lang: Optional[str] = None, # Set the Language Locale Code
|
270
270
|
host: Optional[str] = None, # Chrome remote-debugging-host
|
@@ -318,6 +318,210 @@ async def start(
|
|
318
318
|
(For example, ensuring shadow-root is always in "open" mode.)
|
319
319
|
:type expert: bool
|
320
320
|
"""
|
321
|
+
sys_argv = sys.argv
|
322
|
+
arg_join = " ".join(sys_argv)
|
323
|
+
if headless is None:
|
324
|
+
if "--headless" in sys_argv:
|
325
|
+
headless = True
|
326
|
+
else:
|
327
|
+
headless = False
|
328
|
+
if headed is None:
|
329
|
+
if "--gui" in sys_argv or "--headed" in sys_argv:
|
330
|
+
headed = True
|
331
|
+
else:
|
332
|
+
headed = False
|
333
|
+
if xvfb is None:
|
334
|
+
if "--xvfb" in sys_argv:
|
335
|
+
xvfb = True
|
336
|
+
else:
|
337
|
+
xvfb = False
|
338
|
+
if incognito is None:
|
339
|
+
if "--incognito" in sys_argv:
|
340
|
+
incognito = True
|
341
|
+
else:
|
342
|
+
incognito = False
|
343
|
+
if guest is None:
|
344
|
+
if "--guest" in sys_argv:
|
345
|
+
guest = True
|
346
|
+
else:
|
347
|
+
guest = False
|
348
|
+
if ad_block is None:
|
349
|
+
if "--ad-block" in sys_argv or "--ad_block" in sys_argv:
|
350
|
+
ad_block = True
|
351
|
+
else:
|
352
|
+
ad_block = False
|
353
|
+
if xvfb_metrics is None and "--xvfb-metrics" in arg_join:
|
354
|
+
x_m = xvfb_metrics
|
355
|
+
count = 0
|
356
|
+
for arg in sys_argv:
|
357
|
+
if arg.startswith("--xvfb-metrics="):
|
358
|
+
x_m = arg.split("--xvfb-metrics=")[1]
|
359
|
+
break
|
360
|
+
elif arg == "--xvfb-metrics" and len(sys_argv) > count + 1:
|
361
|
+
x_m = sys_argv[count + 1]
|
362
|
+
if x_m.startswith("-"):
|
363
|
+
x_m = None
|
364
|
+
break
|
365
|
+
count += 1
|
366
|
+
if x_m:
|
367
|
+
if x_m.startswith('"') and x_m.endswith('"'):
|
368
|
+
x_m = x_m[1:-1]
|
369
|
+
elif x_m.startswith("'") and x_m.endswith("'"):
|
370
|
+
x_m = x_m[1:-1]
|
371
|
+
xvfb_metrics = x_m
|
372
|
+
if agent is None and "user_agent" not in kwargs and "--agent" in arg_join:
|
373
|
+
count = 0
|
374
|
+
for arg in sys_argv:
|
375
|
+
if arg.startswith("--agent="):
|
376
|
+
agent = arg.split("--agent=")[1]
|
377
|
+
break
|
378
|
+
elif arg == "--agent" and len(sys_argv) > count + 1:
|
379
|
+
agent = sys_argv[count + 1]
|
380
|
+
if agent.startswith("-"):
|
381
|
+
agent = None
|
382
|
+
break
|
383
|
+
count += 1
|
384
|
+
if agent:
|
385
|
+
if agent.startswith('"') and agent.endswith('"'):
|
386
|
+
agent = agent[1:-1]
|
387
|
+
elif agent.startswith("'") and agent.endswith("'"):
|
388
|
+
agent = agent[1:-1]
|
389
|
+
if (
|
390
|
+
geoloc is None
|
391
|
+
and "geolocation" not in kwargs
|
392
|
+
and "--geolocation" in arg_join
|
393
|
+
):
|
394
|
+
count = 0
|
395
|
+
for arg in sys_argv:
|
396
|
+
if arg.startswith("--geolocation="):
|
397
|
+
geoloc = arg.split("--geolocation=")[1]
|
398
|
+
break
|
399
|
+
elif arg == "--geolocation" and len(sys_argv) > count + 1:
|
400
|
+
geoloc = sys_argv[count + 1]
|
401
|
+
if geoloc.startswith("-"):
|
402
|
+
geoloc = None
|
403
|
+
break
|
404
|
+
count += 1
|
405
|
+
if geoloc:
|
406
|
+
if geoloc.startswith('"') and geoloc.endswith('"'):
|
407
|
+
geoloc = geoloc[1:-1]
|
408
|
+
elif geoloc.startswith("'") and geoloc.endswith("'"):
|
409
|
+
geoloc = geoloc[1:-1]
|
410
|
+
if geoloc:
|
411
|
+
import ast
|
412
|
+
geoloc = ast.literal_eval(geoloc)
|
413
|
+
if not lang and "locale" not in kwargs and "locale_code" not in kwargs:
|
414
|
+
if "--locale" in arg_join:
|
415
|
+
count = 0
|
416
|
+
for arg in sys_argv:
|
417
|
+
if arg.startswith("--locale="):
|
418
|
+
lang = arg.split("--locale=")[1]
|
419
|
+
break
|
420
|
+
elif arg == "--locale" and len(sys_argv) > count + 1:
|
421
|
+
lang = sys_argv[count + 1]
|
422
|
+
if lang.startswith("-"):
|
423
|
+
lang = None
|
424
|
+
break
|
425
|
+
count += 1
|
426
|
+
elif "--lang" in arg_join:
|
427
|
+
count = 0
|
428
|
+
for arg in sys_argv:
|
429
|
+
if arg.startswith("--lang="):
|
430
|
+
lang = arg.split("--lang=")[1]
|
431
|
+
break
|
432
|
+
elif arg == "--lang" and len(sys_argv) > count + 1:
|
433
|
+
lang = sys_argv[count + 1]
|
434
|
+
if lang.startswith("-"):
|
435
|
+
lang = None
|
436
|
+
break
|
437
|
+
count += 1
|
438
|
+
if lang:
|
439
|
+
if lang.startswith('"') and lang.endswith('"'):
|
440
|
+
lang = lang[1:-1]
|
441
|
+
elif lang.startswith("'") and lang.endswith("'"):
|
442
|
+
lang = lang[1:-1]
|
443
|
+
if not browser_executable_path and "binary_location" not in kwargs:
|
444
|
+
bin_loc = None
|
445
|
+
if "--binary-location" in arg_join or "--binary_location" in arg_join:
|
446
|
+
bin_loc_cmd = "--binary-location"
|
447
|
+
if "--binary_location" in arg_join:
|
448
|
+
bin_loc_cmd = "--binary_location"
|
449
|
+
count = 0
|
450
|
+
bin_loc = None
|
451
|
+
for arg in sys_argv:
|
452
|
+
if arg.startswith("%s=" % bin_loc_cmd):
|
453
|
+
bin_loc = arg.split("%s=" % bin_loc_cmd)[1]
|
454
|
+
break
|
455
|
+
elif arg == bin_loc_cmd and len(sys_argv) > count + 1:
|
456
|
+
bin_loc = sys_argv[count + 1]
|
457
|
+
if bin_loc.startswith("-"):
|
458
|
+
bin_loc = None
|
459
|
+
break
|
460
|
+
count += 1
|
461
|
+
elif "--bl=" in arg_join:
|
462
|
+
count = 0
|
463
|
+
bin_loc = None
|
464
|
+
for arg in sys_argv:
|
465
|
+
if arg.startswith("--bl="):
|
466
|
+
bin_loc = arg.split("--bl=")[1]
|
467
|
+
break
|
468
|
+
count += 1
|
469
|
+
if bin_loc:
|
470
|
+
if bin_loc.startswith('"') and bin_loc.endswith('"'):
|
471
|
+
bin_loc = bin_loc[1:-1]
|
472
|
+
elif bin_loc.startswith("'") and bin_loc.endswith("'"):
|
473
|
+
bin_loc = bin_loc[1:-1]
|
474
|
+
if bin_loc and not os.path.exists(bin_loc):
|
475
|
+
print(" No browser executable at PATH {%s}! " % bin_loc)
|
476
|
+
print(" Using default Chrome browser instead!")
|
477
|
+
bin_loc = None
|
478
|
+
browser_executable_path = bin_loc
|
479
|
+
if proxy is None and "--proxy" in arg_join:
|
480
|
+
proxy_string = None
|
481
|
+
if "--proxy=" in arg_join:
|
482
|
+
proxy_string = arg_join.split("--proxy=")[1].split(" ")[0]
|
483
|
+
elif "--proxy " in arg_join:
|
484
|
+
proxy_string = arg_join.split("--proxy ")[1].split(" ")[0]
|
485
|
+
if proxy_string:
|
486
|
+
if proxy_string.startswith('"') and proxy_string.endswith('"'):
|
487
|
+
proxy_string = proxy_string[1:-1]
|
488
|
+
elif proxy_string.startswith("'") and proxy_string.endswith("'"):
|
489
|
+
proxy_string = proxy_string[1:-1]
|
490
|
+
proxy = proxy_string
|
491
|
+
if tzone is None and "timezone" not in kwargs and "--timezone" in arg_join:
|
492
|
+
tz_string = None
|
493
|
+
if "--timezone=" in arg_join:
|
494
|
+
tz_string = arg_join.split("--timezone=")[1].split(" ")[0]
|
495
|
+
elif "--timezone " in arg_join:
|
496
|
+
tz_string = arg_join.split("--timezone ")[1].split(" ")[0]
|
497
|
+
if tz_string:
|
498
|
+
if tz_string.startswith('"') and tz_string.endswith('"'):
|
499
|
+
tz_string = proxy_string[1:-1]
|
500
|
+
elif tz_string.startswith("'") and tz_string.endswith("'"):
|
501
|
+
tz_string = proxy_string[1:-1]
|
502
|
+
tzone = tz_string
|
503
|
+
platform_var = None
|
504
|
+
if (
|
505
|
+
"platform" not in kwargs
|
506
|
+
and "plat" not in kwargs
|
507
|
+
and "--platform" in arg_join
|
508
|
+
):
|
509
|
+
count = 0
|
510
|
+
for arg in sys_argv:
|
511
|
+
if arg.startswith("--platform="):
|
512
|
+
platform_var = arg.split("--platform=")[1]
|
513
|
+
break
|
514
|
+
elif arg == "--platform" and len(sys_argv) > count + 1:
|
515
|
+
platform_var = sys_argv[count + 1]
|
516
|
+
if platform_var.startswith("-"):
|
517
|
+
platform_var = None
|
518
|
+
break
|
519
|
+
count += 1
|
520
|
+
if platform_var:
|
521
|
+
if platform_var.startswith('"') and platform_var.endswith('"'):
|
522
|
+
platform_var = platform_var[1:-1]
|
523
|
+
elif platform_var.startswith("'") and platform_var.endswith("'"):
|
524
|
+
platform_var = platform_var[1:-1]
|
321
525
|
if IS_LINUX and not headless and not headed and not xvfb:
|
322
526
|
xvfb = True # The default setting on Linux
|
323
527
|
__activate_virtual_display_as_needed(headless, headed, xvfb, xvfb_metrics)
|
@@ -404,6 +608,8 @@ async def start(
|
|
404
608
|
sb_config._cdp_platform = kwargs["platform"]
|
405
609
|
elif "plat" in kwargs:
|
406
610
|
sb_config._cdp_platform = kwargs["plat"]
|
611
|
+
elif platform_var:
|
612
|
+
sb_config._cdp_platform = platform_var
|
407
613
|
else:
|
408
614
|
sb_config._cdp_platform = None
|
409
615
|
return driver
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.42.
|
3
|
+
Version: 4.42.4
|
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
|
@@ -28,7 +28,6 @@ Classifier: Environment :: Web Environment
|
|
28
28
|
Classifier: Framework :: Pytest
|
29
29
|
Classifier: Intended Audience :: Developers
|
30
30
|
Classifier: Intended Audience :: Information Technology
|
31
|
-
Classifier: License :: OSI Approved :: MIT License
|
32
31
|
Classifier: Operating System :: MacOS :: MacOS X
|
33
32
|
Classifier: Operating System :: Microsoft :: Windows
|
34
33
|
Classifier: Operating System :: POSIX :: Linux
|
@@ -73,12 +72,14 @@ Requires-Dist: exceptiongroup>=1.3.0
|
|
73
72
|
Requires-Dist: websockets~=13.1; python_version < "3.9"
|
74
73
|
Requires-Dist: websockets>=15.0.1; python_version >= "3.9"
|
75
74
|
Requires-Dist: filelock~=3.16.1; python_version < "3.9"
|
76
|
-
Requires-Dist: filelock
|
75
|
+
Requires-Dist: filelock~=3.19.1; python_version >= "3.9" and python_version < "3.10"
|
76
|
+
Requires-Dist: filelock>=3.20.0; python_version >= "3.10"
|
77
77
|
Requires-Dist: fasteners>=0.20
|
78
78
|
Requires-Dist: mycdp>=1.2.0
|
79
79
|
Requires-Dist: pynose>=1.5.5
|
80
|
-
Requires-Dist: platformdirs
|
81
|
-
Requires-Dist: platformdirs
|
80
|
+
Requires-Dist: platformdirs~=4.3.6; python_version < "3.9"
|
81
|
+
Requires-Dist: platformdirs~=4.4.0; python_version >= "3.9" and python_version < "3.10"
|
82
|
+
Requires-Dist: platformdirs>=4.5.0; python_version >= "3.10"
|
82
83
|
Requires-Dist: typing-extensions~=4.13.2; python_version < "3.9"
|
83
84
|
Requires-Dist: typing-extensions>=4.15.0; python_version >= "3.9"
|
84
85
|
Requires-Dist: sbvirtualdisplay>=1.4.0
|
@@ -91,7 +92,7 @@ Requires-Dist: parse-type>=0.6.6
|
|
91
92
|
Requires-Dist: colorama>=0.4.6
|
92
93
|
Requires-Dist: pyyaml>=6.0.3
|
93
94
|
Requires-Dist: pygments>=2.19.2
|
94
|
-
Requires-Dist: pyreadline3>=3.5.
|
95
|
+
Requires-Dist: pyreadline3>=3.5.4; platform_system == "Windows"
|
95
96
|
Requires-Dist: tabcompleter>=1.4.0
|
96
97
|
Requires-Dist: pdbp>=1.7.1
|
97
98
|
Requires-Dist: idna==3.10
|
@@ -108,7 +109,8 @@ Requires-Dist: trio==0.27.0; python_version < "3.9"
|
|
108
109
|
Requires-Dist: trio<1,>=0.31.0; python_version >= "3.9"
|
109
110
|
Requires-Dist: trio-websocket~=0.12.2
|
110
111
|
Requires-Dist: wsproto==1.2.0
|
111
|
-
Requires-Dist: websocket-client~=1.8.0
|
112
|
+
Requires-Dist: websocket-client~=1.8.0; python_version < "3.9"
|
113
|
+
Requires-Dist: websocket-client~=1.9.0; python_version >= "3.9"
|
112
114
|
Requires-Dist: selenium==4.27.1; python_version < "3.9"
|
113
115
|
Requires-Dist: selenium==4.32.0; python_version >= "3.9" and python_version < "3.10"
|
114
116
|
Requires-Dist: selenium==4.36.0; python_version >= "3.10"
|
@@ -135,10 +137,11 @@ Requires-Dist: soupsieve~=2.8; python_version >= "3.9"
|
|
135
137
|
Requires-Dist: beautifulsoup4~=4.14.2
|
136
138
|
Requires-Dist: pyotp==2.9.0
|
137
139
|
Requires-Dist: python-xlib==0.33; platform_system == "Linux"
|
140
|
+
Requires-Dist: PyAutoGUI>=0.9.54; platform_system == "Linux"
|
138
141
|
Requires-Dist: markdown-it-py==3.0.0; python_version < "3.10"
|
139
142
|
Requires-Dist: markdown-it-py==4.0.0; python_version >= "3.10"
|
140
143
|
Requires-Dist: mdurl==0.1.2
|
141
|
-
Requires-Dist: rich<15,>=14.
|
144
|
+
Requires-Dist: rich<15,>=14.2.0
|
142
145
|
Provides-Extra: allure
|
143
146
|
Requires-Dist: allure-pytest>=2.13.5; extra == "allure"
|
144
147
|
Requires-Dist: allure-python-commons>=2.13.5; extra == "allure"
|
@@ -181,12 +184,12 @@ Requires-Dist: proxy.py==2.4.3; extra == "proxy"
|
|
181
184
|
Provides-Extra: psutil
|
182
185
|
Requires-Dist: psutil==7.1.0; extra == "psutil"
|
183
186
|
Provides-Extra: pyautogui
|
184
|
-
Requires-Dist: PyAutoGUI
|
187
|
+
Requires-Dist: PyAutoGUI>=0.9.54; platform_system != "Linux" and extra == "pyautogui"
|
185
188
|
Provides-Extra: selenium-stealth
|
186
189
|
Requires-Dist: selenium-stealth==1.0.6; extra == "selenium-stealth"
|
187
190
|
Provides-Extra: selenium-wire
|
188
191
|
Requires-Dist: selenium-wire==5.1.0; extra == "selenium-wire"
|
189
|
-
Requires-Dist: pyOpenSSL
|
192
|
+
Requires-Dist: pyOpenSSL>=24.2.1; extra == "selenium-wire"
|
190
193
|
Requires-Dist: pyparsing>=3.1.4; extra == "selenium-wire"
|
191
194
|
Requires-Dist: Brotli==1.1.0; extra == "selenium-wire"
|
192
195
|
Requires-Dist: blinker==1.7.0; extra == "selenium-wire"
|
@@ -195,7 +198,7 @@ Requires-Dist: hpack==4.0.0; extra == "selenium-wire"
|
|
195
198
|
Requires-Dist: hyperframe==6.0.1; extra == "selenium-wire"
|
196
199
|
Requires-Dist: kaitaistruct==0.10; extra == "selenium-wire"
|
197
200
|
Requires-Dist: pyasn1==0.6.1; extra == "selenium-wire"
|
198
|
-
Requires-Dist: zstandard
|
201
|
+
Requires-Dist: zstandard>=0.23.0; extra == "selenium-wire"
|
199
202
|
Dynamic: author
|
200
203
|
Dynamic: author-email
|
201
204
|
Dynamic: classifier
|
@@ -23,7 +23,6 @@ h11==0.16.0
|
|
23
23
|
outcome==1.3.0.post0
|
24
24
|
trio-websocket~=0.12.2
|
25
25
|
wsproto==1.2.0
|
26
|
-
websocket-client~=1.8.0
|
27
26
|
sortedcontainers==2.4.0
|
28
27
|
execnet==2.1.1
|
29
28
|
iniconfig==2.1.0
|
@@ -35,13 +34,14 @@ behave==1.2.6
|
|
35
34
|
beautifulsoup4~=4.14.2
|
36
35
|
pyotp==2.9.0
|
37
36
|
mdurl==0.1.2
|
38
|
-
rich<15,>=14.
|
37
|
+
rich<15,>=14.2.0
|
39
38
|
|
40
39
|
[:platform_system == "Linux"]
|
41
40
|
python-xlib==0.33
|
41
|
+
PyAutoGUI>=0.9.54
|
42
42
|
|
43
43
|
[:platform_system == "Windows"]
|
44
|
-
pyreadline3>=3.5.
|
44
|
+
pyreadline3>=3.5.4
|
45
45
|
|
46
46
|
[:python_version < "3.10"]
|
47
47
|
setuptools~=70.2
|
@@ -53,11 +53,12 @@ pip>=25.0.1
|
|
53
53
|
attrs~=25.3.0
|
54
54
|
websockets~=13.1
|
55
55
|
filelock~=3.16.1
|
56
|
-
platformdirs
|
56
|
+
platformdirs~=4.3.6
|
57
57
|
typing-extensions~=4.13.2
|
58
58
|
MarkupSafe==2.1.5
|
59
59
|
requests==2.32.4
|
60
60
|
trio==0.27.0
|
61
|
+
websocket-client~=1.8.0
|
61
62
|
selenium==4.27.1
|
62
63
|
cssselect==1.2.0
|
63
64
|
pluggy==1.5.0
|
@@ -68,6 +69,8 @@ soupsieve==2.7
|
|
68
69
|
|
69
70
|
[:python_version >= "3.10"]
|
70
71
|
setuptools>=80.9.0
|
72
|
+
filelock>=3.20.0
|
73
|
+
platformdirs>=4.5.0
|
71
74
|
urllib3<2.6.0,>=1.26.20
|
72
75
|
selenium==4.36.0
|
73
76
|
markdown-it-py==4.0.0
|
@@ -76,12 +79,11 @@ markdown-it-py==4.0.0
|
|
76
79
|
pip>=25.2
|
77
80
|
attrs>=25.4.0
|
78
81
|
websockets>=15.0.1
|
79
|
-
filelock>=3.19.1
|
80
|
-
platformdirs>=4.4.0
|
81
82
|
typing-extensions>=4.15.0
|
82
83
|
MarkupSafe>=3.0.3
|
83
84
|
requests~=2.32.5
|
84
85
|
trio<1,>=0.31.0
|
86
|
+
websocket-client~=1.9.0
|
85
87
|
cssselect==1.3.0
|
86
88
|
pluggy==1.6.0
|
87
89
|
pytest==8.4.2
|
@@ -90,6 +92,8 @@ pytest-xdist==3.8.0
|
|
90
92
|
soupsieve~=2.8
|
91
93
|
|
92
94
|
[:python_version >= "3.9" and python_version < "3.10"]
|
95
|
+
filelock~=3.19.1
|
96
|
+
platformdirs~=4.4.0
|
93
97
|
selenium==4.32.0
|
94
98
|
|
95
99
|
[allure]
|
@@ -166,14 +170,16 @@ proxy.py==2.4.3
|
|
166
170
|
psutil==7.1.0
|
167
171
|
|
168
172
|
[pyautogui]
|
169
|
-
|
173
|
+
|
174
|
+
[pyautogui:platform_system != "Linux"]
|
175
|
+
PyAutoGUI>=0.9.54
|
170
176
|
|
171
177
|
[selenium-stealth]
|
172
178
|
selenium-stealth==1.0.6
|
173
179
|
|
174
180
|
[selenium-wire]
|
175
181
|
selenium-wire==5.1.0
|
176
|
-
pyOpenSSL
|
182
|
+
pyOpenSSL>=24.2.1
|
177
183
|
pyparsing>=3.1.4
|
178
184
|
Brotli==1.1.0
|
179
185
|
blinker==1.7.0
|
@@ -182,4 +188,4 @@ hpack==4.0.0
|
|
182
188
|
hyperframe==6.0.1
|
183
189
|
kaitaistruct==0.10
|
184
190
|
pyasn1==0.6.1
|
185
|
-
zstandard
|
191
|
+
zstandard>=0.23.0
|
@@ -114,7 +114,6 @@ setup(
|
|
114
114
|
"Framework :: Pytest",
|
115
115
|
"Intended Audience :: Developers",
|
116
116
|
"Intended Audience :: Information Technology",
|
117
|
-
"License :: OSI Approved :: MIT License",
|
118
117
|
"Operating System :: MacOS :: MacOS X",
|
119
118
|
"Operating System :: Microsoft :: Windows",
|
120
119
|
"Operating System :: POSIX :: Linux",
|
@@ -159,12 +158,14 @@ setup(
|
|
159
158
|
'websockets~=13.1;python_version<"3.9"',
|
160
159
|
'websockets>=15.0.1;python_version>="3.9"',
|
161
160
|
'filelock~=3.16.1;python_version<"3.9"',
|
162
|
-
'filelock
|
161
|
+
'filelock~=3.19.1;python_version>="3.9" and python_version<"3.10"',
|
162
|
+
'filelock>=3.20.0;python_version>="3.10"',
|
163
163
|
'fasteners>=0.20',
|
164
164
|
"mycdp>=1.2.0",
|
165
165
|
"pynose>=1.5.5",
|
166
|
-
'platformdirs
|
167
|
-
'platformdirs
|
166
|
+
'platformdirs~=4.3.6;python_version<"3.9"',
|
167
|
+
'platformdirs~=4.4.0;python_version>="3.9" and python_version<"3.10"',
|
168
|
+
'platformdirs>=4.5.0;python_version>="3.10"',
|
168
169
|
'typing-extensions~=4.13.2;python_version<"3.9"',
|
169
170
|
'typing-extensions>=4.15.0;python_version>="3.9"',
|
170
171
|
"sbvirtualdisplay>=1.4.0",
|
@@ -177,7 +178,7 @@ setup(
|
|
177
178
|
'colorama>=0.4.6',
|
178
179
|
'pyyaml>=6.0.3',
|
179
180
|
'pygments>=2.19.2',
|
180
|
-
'pyreadline3>=3.5.
|
181
|
+
'pyreadline3>=3.5.4;platform_system=="Windows"',
|
181
182
|
"tabcompleter>=1.4.0",
|
182
183
|
"pdbp>=1.7.1",
|
183
184
|
"idna==3.10",
|
@@ -194,7 +195,8 @@ setup(
|
|
194
195
|
'trio>=0.31.0,<1;python_version>="3.9"',
|
195
196
|
'trio-websocket~=0.12.2',
|
196
197
|
'wsproto==1.2.0',
|
197
|
-
'websocket-client~=1.8.0',
|
198
|
+
'websocket-client~=1.8.0;python_version<"3.9"',
|
199
|
+
'websocket-client~=1.9.0;python_version>="3.9"',
|
198
200
|
'selenium==4.27.1;python_version<"3.9"',
|
199
201
|
'selenium==4.32.0;python_version>="3.9" and python_version<"3.10"',
|
200
202
|
'selenium==4.36.0;python_version>="3.10"',
|
@@ -221,10 +223,11 @@ setup(
|
|
221
223
|
"beautifulsoup4~=4.14.2",
|
222
224
|
'pyotp==2.9.0',
|
223
225
|
'python-xlib==0.33;platform_system=="Linux"',
|
226
|
+
'PyAutoGUI>=0.9.54;platform_system=="Linux"',
|
224
227
|
'markdown-it-py==3.0.0;python_version<"3.10"',
|
225
228
|
'markdown-it-py==4.0.0;python_version>="3.10"',
|
226
229
|
'mdurl==0.1.2',
|
227
|
-
'rich>=14.
|
230
|
+
'rich>=14.2.0,<15',
|
228
231
|
],
|
229
232
|
extras_require={
|
230
233
|
# pip install -e .[allure]
|
@@ -301,8 +304,9 @@ setup(
|
|
301
304
|
"psutil==7.1.0",
|
302
305
|
],
|
303
306
|
# pip install -e .[pyautogui]
|
307
|
+
# (Already a required dependency on Linux now.)
|
304
308
|
"pyautogui": [
|
305
|
-
|
309
|
+
'PyAutoGUI>=0.9.54;platform_system!="Linux"',
|
306
310
|
],
|
307
311
|
# pip install -e .[selenium-stealth]
|
308
312
|
"selenium-stealth": [
|
@@ -311,7 +315,7 @@ setup(
|
|
311
315
|
# pip install -e .[selenium-wire]
|
312
316
|
"selenium-wire": [
|
313
317
|
'selenium-wire==5.1.0',
|
314
|
-
'pyOpenSSL
|
318
|
+
'pyOpenSSL>=24.2.1',
|
315
319
|
'pyparsing>=3.1.4',
|
316
320
|
'Brotli==1.1.0',
|
317
321
|
'blinker==1.7.0', # Newer ones had issues
|
@@ -320,7 +324,7 @@ setup(
|
|
320
324
|
'hyperframe==6.0.1',
|
321
325
|
'kaitaistruct==0.10',
|
322
326
|
'pyasn1==0.6.1',
|
323
|
-
'zstandard
|
327
|
+
'zstandard>=0.23.0',
|
324
328
|
],
|
325
329
|
},
|
326
330
|
packages=[
|
File without changes
|
File without changes
|