Skip to content

Commit 4a8fd1f

Browse files
committed
Make a few updates to the driver download script
1 parent 4c40d60 commit 4a8fd1f

File tree

1 file changed

+23
-10
lines changed

1 file changed

+23
-10
lines changed

seleniumbase/console_scripts/sb_install.py

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
sbase install chromedriver
1414
sbase install geckodriver
1515
sbase install edgedriver
16-
sbase install chromedriver 89.0.4389.23
17-
sbase install chromedriver 89
16+
sbase install chromedriver 91.0.4472.101
17+
sbase install chromedriver 91
1818
sbase install chromedriver latest
1919
sbase install chromedriver -p
2020
sbase install chromedriver latest -p
21-
sbase install edgedriver 89.0.774.54
21+
sbase install edgedriver 91.0.864.67
2222
Output:
2323
Installs the chosen webdriver to seleniumbase/drivers/
2424
(chromedriver is required for Chrome automation)
@@ -85,6 +85,17 @@ def make_executable(file_path):
8585
os.chmod(file_path, mode)
8686

8787

88+
def requests_get(url):
89+
response = None
90+
try:
91+
response = requests.get(url)
92+
except Exception:
93+
# Prevent SSLCertVerificationError / CERTIFICATE_VERIFY_FAILED
94+
url = url.replace("https://", "http://")
95+
response = requests.get(url)
96+
return response
97+
98+
8899
def main(override=None):
89100
if override == "chromedriver":
90101
sys.argv = ["seleniumbase", "install", "chromedriver"]
@@ -163,22 +174,24 @@ def main(override=None):
163174
file_name = "chromedriver_linux64.zip"
164175
elif "win32" in sys_plat or "win64" in sys_plat or "x64" in sys_plat:
165176
file_name = "chromedriver_win32.zip" # Works for win32 / win_x64
177+
if not get_latest and not get_v_latest and num_args < 4:
178+
get_latest = True
166179
else:
167180
raise Exception(
168181
"Cannot determine which version of chromedriver to download!"
169182
)
170183
found_chromedriver = False
171184
if get_latest:
172-
url_request = requests.get(last)
185+
url_request = requests_get(last)
173186
if url_request.ok:
174187
found_chromedriver = True
175188
use_version = url_request.text
176189
elif get_v_latest:
177-
url_req = requests.get(last)
190+
url_req = requests_get(last)
178191
if url_req.ok:
179192
latest_version = url_req.text
180193
last = last + "_" + use_version
181-
url_request = requests.get(last)
194+
url_request = requests_get(last)
182195
if url_request.ok:
183196
found_chromedriver = True
184197
use_version = url_request.text
@@ -190,12 +203,12 @@ def main(override=None):
190203
)
191204
url_request = None
192205
if not found_chromedriver:
193-
url_req = requests.get(last)
206+
url_req = requests_get(last)
194207
if url_req.ok:
195208
latest_version = url_req.text
196209
if use_version == latest_version:
197210
get_latest = True
198-
url_request = requests.get(download_url)
211+
url_request = requests_get(download_url)
199212
if found_chromedriver or url_request.ok:
200213
p_version = use_version
201214
p_version = c3 + use_version + cr
@@ -226,7 +239,7 @@ def main(override=None):
226239
"https://api.github.com/repos/"
227240
"mozilla/geckodriver/releases/latest"
228241
)
229-
url_request = requests.get(last)
242+
url_request = requests_get(last)
230243
if url_request.ok:
231244
found_geckodriver = True
232245
use_version = url_request.json()["tag_name"]
@@ -260,7 +273,7 @@ def main(override=None):
260273
)
261274
url_request = None
262275
if not found_geckodriver:
263-
url_request = requests.get(download_url)
276+
url_request = requests_get(download_url)
264277
if found_geckodriver or url_request.ok:
265278
msg = c2 + "geckodriver version for download" + cr
266279
p_version = c3 + use_version + cr

0 commit comments

Comments
 (0)