seleniumbase 4.24.12__py3-none-any.whl → 4.25.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  # seleniumbase package
2
- __version__ = "4.24.12"
2
+ __version__ = "4.25.0"
@@ -27,6 +27,7 @@ from seleniumbase.core import download_helper
27
27
  from seleniumbase.core import proxy_helper
28
28
  from seleniumbase.core import sb_driver
29
29
  from seleniumbase.fixtures import constants
30
+ from seleniumbase.fixtures import js_utils
30
31
  from seleniumbase.fixtures import shared_utils
31
32
 
32
33
  urllib3.disable_warnings()
@@ -406,9 +407,9 @@ def uc_open(driver, url):
406
407
  elif ":" not in url:
407
408
  url = "https://" + url
408
409
  if (url.startswith("http:") or url.startswith("https:")):
409
- time.sleep(0.05)
410
410
  with driver:
411
- driver.default_get(url)
411
+ script = 'window.location.href = "%s";' % url
412
+ js_utils.call_me_later(driver, script, 33)
412
413
  else:
413
414
  driver.default_get(url) # The original one
414
415
  return None
@@ -420,7 +421,6 @@ def uc_open_with_tab(driver, url):
420
421
  elif ":" not in url:
421
422
  url = "https://" + url
422
423
  if (url.startswith("http:") or url.startswith("https:")):
423
- time.sleep(0.05)
424
424
  with driver:
425
425
  driver.execute_script('window.open("%s","_blank");' % url)
426
426
  driver.close()
@@ -439,7 +439,9 @@ def uc_open_with_reconnect(driver, url, reconnect_time=None):
439
439
  elif ":" not in url:
440
440
  url = "https://" + url
441
441
  if (url.startswith("http:") or url.startswith("https:")):
442
- driver.execute_script('window.open("%s","_blank");' % url)
442
+ script = 'window.open("%s","_blank");' % url
443
+ js_utils.call_me_later(driver, script, 3)
444
+ time.sleep(0.007)
443
445
  driver.close()
444
446
  driver.reconnect(reconnect_time)
445
447
  driver.switch_to.window(driver.window_handles[-1])
@@ -3878,7 +3880,7 @@ def get_local_driver(
3878
3880
  service=service, options=chrome_options
3879
3881
  )
3880
3882
  return extend_driver(driver)
3881
- except Exception:
3883
+ except Exception as original_exception:
3882
3884
  if is_using_uc(undetectable, browser_name):
3883
3885
  raise
3884
3886
  # Try again if Chrome didn't launch
@@ -3914,8 +3916,11 @@ def get_local_driver(
3914
3916
  log_output=os.devnull,
3915
3917
  service_args=["--disable-build-check"]
3916
3918
  )
3917
- driver = webdriver.Chrome(service=service)
3918
- return extend_driver(driver)
3919
+ try:
3920
+ driver = webdriver.Chrome(service=service)
3921
+ return extend_driver(driver)
3922
+ except Exception:
3923
+ raise original_exception
3919
3924
  else:
3920
3925
  raise Exception(
3921
3926
  "%s is not a valid browser option for this system!" % browser_name
@@ -12,7 +12,10 @@ class WebElement(selenium.webdriver.remote.webelement.WebElement):
12
12
  tag_name=None,
13
13
  ):
14
14
  if driver and selector and by:
15
- if tag_name == "span" and ":contains" not in selector:
15
+ delayed_click = False
16
+ if tag_name == "span" or tag_name == "button" or tag_name == "div":
17
+ delayed_click = True
18
+ if delayed_click and ":contains" not in selector:
16
19
  selector = js_utils.convert_to_css_selector(selector, by)
17
20
  script = 'document.querySelector("%s").click();' % selector
18
21
  js_utils.call_me_later(driver, script, 111)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: seleniumbase
3
- Version: 4.24.12
3
+ Version: 4.25.0
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
@@ -70,7 +70,7 @@ Requires-Dist: idna ==3.6
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
73
- Requires-Dist: pynose ==1.5.0
73
+ Requires-Dist: pynose ==1.5.1
74
74
  Requires-Dist: sniffio ==1.3.1
75
75
  Requires-Dist: h11 ==0.14.0
76
76
  Requires-Dist: outcome ==1.3.0.post0
@@ -114,11 +114,11 @@ 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.1 ; python_version >= "3.8"
117
+ Requires-Dist: filelock >=3.13.3 ; python_version >= "3.8"
118
118
  Requires-Dist: platformdirs >=4.2.0 ; python_version >= "3.8"
119
119
  Requires-Dist: typing-extensions >=4.10.0 ; python_version >= "3.8"
120
120
  Requires-Dist: trio ==0.25.0 ; python_version >= "3.8"
121
- Requires-Dist: selenium ==4.18.1 ; python_version >= "3.8"
121
+ Requires-Dist: selenium ==4.19.0 ; python_version >= "3.8"
122
122
  Requires-Dist: pluggy ==1.4.0 ; python_version >= "3.8"
123
123
  Requires-Dist: pytest ==8.1.1 ; python_version >= "3.8"
124
124
  Requires-Dist: pytest-metadata ==3.1.1 ; python_version >= "3.8"
@@ -126,13 +126,14 @@ Requires-Dist: pytest-rerunfailures ==14.0 ; python_version >= "3.8"
126
126
  Requires-Dist: soupsieve ==2.5 ; python_version >= "3.8"
127
127
  Requires-Dist: markdown-it-py ==3.0.0 ; python_version >= "3.8"
128
128
  Provides-Extra: allure
129
- Requires-Dist: allure-pytest ==2.13.3 ; extra == 'allure'
130
- Requires-Dist: allure-python-commons ==2.13.3 ; extra == 'allure'
131
- Requires-Dist: allure-behave ==2.13.3 ; extra == 'allure'
129
+ Requires-Dist: allure-pytest ==2.13.4 ; extra == 'allure'
130
+ Requires-Dist: allure-python-commons ==2.13.4 ; extra == 'allure'
131
+ Requires-Dist: allure-behave ==2.13.4 ; extra == 'allure'
132
132
  Provides-Extra: coverage
133
- Requires-Dist: pytest-cov ==4.1.0 ; extra == 'coverage'
134
133
  Requires-Dist: coverage ==7.2.7 ; (python_version < "3.8") and extra == 'coverage'
134
+ Requires-Dist: pytest-cov ==4.1.0 ; (python_version < "3.8") and extra == 'coverage'
135
135
  Requires-Dist: coverage ==7.4.4 ; (python_version >= "3.8") and extra == 'coverage'
136
+ Requires-Dist: pytest-cov ==5.0.0 ; (python_version >= "3.8") and extra == 'coverage'
136
137
  Provides-Extra: flake8
137
138
  Requires-Dist: mccabe ==0.7.0 ; extra == 'flake8'
138
139
  Requires-Dist: flake8 ==5.0.4 ; (python_version < "3.9") and extra == 'flake8'
@@ -145,7 +146,7 @@ Provides-Extra: ipdb
145
146
  Requires-Dist: ipdb ==0.13.13 ; extra == 'ipdb'
146
147
  Requires-Dist: ipython ==7.34.0 ; extra == 'ipdb'
147
148
  Provides-Extra: pdfminer
148
- Requires-Dist: pycparser ==2.21 ; extra == 'pdfminer'
149
+ Requires-Dist: pycparser ==2.22 ; extra == 'pdfminer'
149
150
  Requires-Dist: pdfminer.six ==20221105 ; (python_version < "3.8") and extra == 'pdfminer'
150
151
  Requires-Dist: cffi ==1.15.1 ; (python_version < "3.8") and extra == 'pdfminer'
151
152
  Requires-Dist: cryptography ==39.0.2 ; (python_version < "3.9") and extra == 'pdfminer'
@@ -155,6 +156,8 @@ Requires-Dist: cryptography ==42.0.5 ; (python_version >= "3.9") and extra == 'p
155
156
  Provides-Extra: pillow
156
157
  Requires-Dist: Pillow ==9.5.0 ; (python_version < "3.8") and extra == 'pillow'
157
158
  Requires-Dist: Pillow ==10.2.0 ; (python_version >= "3.8") and extra == 'pillow'
159
+ Provides-Extra: pip-system-certs
160
+ Requires-Dist: pip-system-certs ==4.0 ; (platform_system == "Windows") and extra == 'pip-system-certs'
158
161
  Provides-Extra: proxy
159
162
  Requires-Dist: proxy.py ==2.4.3 ; extra == 'proxy'
160
163
  Provides-Extra: psutil
@@ -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=FuNHCSUIfCBcrG981EXrZolshvrop3RCSGjpD9rSLYs,47
8
+ seleniumbase/__version__.py,sha256=KSzvln4mFv8ChtLQFgg4f_icZ0x9lEj-1w9M2uIQb3o,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
@@ -40,7 +40,7 @@ seleniumbase/console_scripts/sb_print.py,sha256=yo641b_OdSE0GUauOyxk-QrNeIjYzbRY
40
40
  seleniumbase/console_scripts/sb_recorder.py,sha256=2QQov64Erfnm1hnVleKX-c_llcsO6hhJKKxzcANcix0,10904
41
41
  seleniumbase/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
42
  seleniumbase/core/application_manager.py,sha256=e_0sjtI8cjY5BNyZj1QBR0j6_oCScxGmSXYEpcYwuZE,576
43
- seleniumbase/core/browser_launcher.py,sha256=Z6bN8sXna7vSyzOtLqK3G5bv0C_PTSxZQiJ_Ggw33Ak,165803
43
+ seleniumbase/core/browser_launcher.py,sha256=xlZqxbA4p3zIpsXGAcJYr-09OtykvdIsDoj6yyOPKYw,166053
44
44
  seleniumbase/core/capabilities_parser.py,sha256=meIS2uHapTCq2ldfNAToC7r0cKmZDRXuYNKExM1GHDY,6038
45
45
  seleniumbase/core/colored_traceback.py,sha256=DrRWfg7XEnKcgY59Xj7Jdk09H-XqHYBSUpB-DiZt6iY,2020
46
46
  seleniumbase/core/create_db_tables.sql,sha256=VWPtrdiW_HQ6yETHjqTu-VIrTwvd8I8o1NfBeaVSHpU,972
@@ -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=5T-T14G3C5ZS9wXdcvFeHpBgFfdAE10heR1vk0iqF9Y,1098
123
+ seleniumbase/undetected/webelement.py,sha256=RXOxTRZStVgtOASkGGA_0dnhrATMIG4-NVw3dvIqIME,1247
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.24.12.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
141
- seleniumbase-4.24.12.dist-info/METADATA,sha256=hdWtYKRDJO0nlGq2VzdgQumopamp7fVqUTvdUBHqCuw,83872
142
- seleniumbase-4.24.12.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
143
- seleniumbase-4.24.12.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
144
- seleniumbase-4.24.12.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
145
- seleniumbase-4.24.12.dist-info/RECORD,,
140
+ seleniumbase-4.25.0.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
141
+ seleniumbase-4.25.0.dist-info/METADATA,sha256=QnnZkS4EmD-AvLLF246W5KELQveBruWPxuc0JgISwXY,84122
142
+ seleniumbase-4.25.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
143
+ seleniumbase-4.25.0.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
144
+ seleniumbase-4.25.0.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
145
+ seleniumbase-4.25.0.dist-info/RECORD,,