seleniumbase 4.30.1__py3-none-any.whl → 4.30.2__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 +28 -2
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/METADATA +2 -2
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/RECORD +8 -8
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/WHEEL +1 -1
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/LICENSE +0 -0
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/entry_points.txt +0 -0
- {seleniumbase-4.30.1.dist-info → seleniumbase-4.30.2.dist-info}/top_level.txt +0 -0
seleniumbase/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.30.
|
2
|
+
__version__ = "4.30.2"
|
@@ -340,17 +340,19 @@ def find_edgedriver_version_to_use(use_version, driver_version):
|
|
340
340
|
return use_version
|
341
341
|
|
342
342
|
|
343
|
-
def
|
343
|
+
def has_captcha(text):
|
344
344
|
if (
|
345
345
|
"<title>403 Forbidden</title>" in text
|
346
346
|
or "Permission Denied</title>" in text
|
347
347
|
or 'id="challenge-error-text"' in text
|
348
348
|
or "<title>Just a moment..." in text
|
349
349
|
or 'action="/?__cf_chl_f_tk' in text
|
350
|
+
or 'id="challenge-widget-' in text
|
350
351
|
or 'src="chromedriver.js"' in text
|
351
352
|
or 'class="g-recaptcha"' in text
|
352
353
|
or 'content="Pixelscan"' in text
|
353
354
|
or 'id="challenge-form"' in text
|
355
|
+
or "/challenge-platform" in text
|
354
356
|
or "window._cf_chl_opt" in text
|
355
357
|
or "/recaptcha/api.js" in text
|
356
358
|
or "/turnstile/" in text
|
@@ -377,7 +379,7 @@ def uc_special_open_if_cf(
|
|
377
379
|
status_str.startswith("3")
|
378
380
|
or status_str.startswith("4")
|
379
381
|
or status_str.startswith("5")
|
380
|
-
or
|
382
|
+
or has_captcha(req_get.text)
|
381
383
|
):
|
382
384
|
special = True
|
383
385
|
if status_str == "403" or status_str == "429":
|
@@ -763,6 +765,8 @@ def _on_a_cf_turnstile_page(driver):
|
|
763
765
|
source = driver.get_page_source()
|
764
766
|
if (
|
765
767
|
'data-callback="onCaptchaSuccess"' in source
|
768
|
+
or "/challenge-platform/scripts/" in source
|
769
|
+
or 'id="challenge-widget-' in source
|
766
770
|
or "cf-turnstile-" in source
|
767
771
|
):
|
768
772
|
return True
|
@@ -866,6 +870,13 @@ def _uc_gui_click_captcha(
|
|
866
870
|
and driver.is_element_present("div.spacer div")
|
867
871
|
):
|
868
872
|
frame = "div.spacer div"
|
873
|
+
elif (
|
874
|
+
driver.is_element_present('script[src*="challenges.c"]')
|
875
|
+
and driver.is_element_present(
|
876
|
+
'[data-testid*="challenge-"] div'
|
877
|
+
)
|
878
|
+
):
|
879
|
+
frame = '[data-testid*="challenge-"] div'
|
869
880
|
elif (
|
870
881
|
(
|
871
882
|
driver.is_element_present('[name*="cf-turnstile-"]')
|
@@ -883,6 +894,14 @@ def _uc_gui_click_captcha(
|
|
883
894
|
)
|
884
895
|
):
|
885
896
|
frame = "%s .cf-turnstile-wrapper" % frame
|
897
|
+
elif (
|
898
|
+
frame != "iframe"
|
899
|
+
and driver.is_element_present(
|
900
|
+
'%s [name*="cf-turnstile"]' % frame
|
901
|
+
)
|
902
|
+
and driver.is_element_present("%s div" % frame)
|
903
|
+
):
|
904
|
+
frame = "%s div" % frame
|
886
905
|
elif driver.is_element_present(".cf-turnstile-wrapper"):
|
887
906
|
frame = ".cf-turnstile-wrapper"
|
888
907
|
elif driver.is_element_present(
|
@@ -1102,6 +1121,13 @@ def _uc_gui_handle_captcha(
|
|
1102
1121
|
and driver.is_element_present("div.spacer div")
|
1103
1122
|
):
|
1104
1123
|
frame = "div.spacer div"
|
1124
|
+
elif (
|
1125
|
+
driver.is_element_present('script[src*="challenges.c"]')
|
1126
|
+
and driver.is_element_present(
|
1127
|
+
'[data-testid*="challenge-"] div'
|
1128
|
+
)
|
1129
|
+
):
|
1130
|
+
frame = '[data-testid*="challenge-"] div'
|
1105
1131
|
elif (
|
1106
1132
|
(
|
1107
1133
|
driver.is_element_present('[name*="cf-turnstile-"]')
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.30.
|
3
|
+
Version: 4.30.2
|
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
|
@@ -161,7 +161,7 @@ Requires-Dist: cffi ==1.15.1 ; (python_version < "3.8") and extra == 'pdfminer'
|
|
161
161
|
Requires-Dist: cryptography ==39.0.2 ; (python_version < "3.9") and extra == 'pdfminer'
|
162
162
|
Requires-Dist: pdfminer.six ==20240706 ; (python_version >= "3.8") and extra == 'pdfminer'
|
163
163
|
Requires-Dist: cffi ==1.17.0 ; (python_version >= "3.8") and extra == 'pdfminer'
|
164
|
-
Requires-Dist: cryptography ==43.0.
|
164
|
+
Requires-Dist: cryptography ==43.0.1 ; (python_version >= "3.9") and extra == 'pdfminer'
|
165
165
|
Provides-Extra: pillow
|
166
166
|
Requires-Dist: Pillow ==9.5.0 ; (python_version < "3.8") and extra == 'pillow'
|
167
167
|
Requires-Dist: Pillow >=10.4.0 ; (python_version >= "3.8") and extra == 'pillow'
|
@@ -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=dgq30q6wGO2fJOVYemxC5hLxzv-of-MRn5P1YarBq5k,2263
|
7
7
|
seleniumbase/__main__.py,sha256=dn1p6dgCchmcH1zzTzzQvFwwdQQqnTGH6ULV9m4hv24,654
|
8
|
-
seleniumbase/__version__.py,sha256=
|
8
|
+
seleniumbase/__version__.py,sha256=BdkAfSbnD0GdQ2ws-16m3-ETEGErOpRmMIK6vKT_YUs,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=q4uYZixZBf7VYWnQnEk2weTcyMy1X1faR3vyYvUzDiA,56406
|
@@ -40,7 +40,7 @@ seleniumbase/console_scripts/sb_print.py,sha256=yo641b_OdSE0GUauOyxk-QrNeIjYzbRY
|
|
40
40
|
seleniumbase/console_scripts/sb_recorder.py,sha256=UQQhnAR18dbcC7ToDvj6TM2PIG5qBrNaekaM6kSK_E8,10970
|
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=
|
43
|
+
seleniumbase/core/browser_launcher.py,sha256=S5caztJN0Al8eRFbsTAKQIugD8PpCQnMhvQIqqpO1j8,199052
|
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
|
@@ -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.30.
|
141
|
-
seleniumbase-4.30.
|
142
|
-
seleniumbase-4.30.
|
143
|
-
seleniumbase-4.30.
|
144
|
-
seleniumbase-4.30.
|
145
|
-
seleniumbase-4.30.
|
140
|
+
seleniumbase-4.30.2.dist-info/LICENSE,sha256=odSYtWibXBnQ1gBg6CnDZ82n8kLF_if5-2nbqnEyD8k,1085
|
141
|
+
seleniumbase-4.30.2.dist-info/METADATA,sha256=Zj_V_pSG-9cEhphk9j0wA0vP40xi-Fol8V40UMyTV0M,86175
|
142
|
+
seleniumbase-4.30.2.dist-info/WHEEL,sha256=uCRv0ZEik_232NlR4YDw4Pv3Ajt5bKvMH13NUU7hFuI,91
|
143
|
+
seleniumbase-4.30.2.dist-info/entry_points.txt,sha256=CNrh2EKNaHYEhO6pP1RJyVLB99LkDDYX7TnUK8xfjqk,623
|
144
|
+
seleniumbase-4.30.2.dist-info/top_level.txt,sha256=4N97aBOQ8ETCnDnokBsWb07lJfTaq3C1ZzYRxvLMxqU,19
|
145
|
+
seleniumbase-4.30.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|