Skip to content

Commit 2ff791e

Browse files
authored
Merge pull request #1269 from seleniumbase/firefox-updates-and-fixes
Firefox updates and fixes
2 parents 5514d06 + 9fdd85f commit 2ff791e

File tree

2 files changed

+20
-11
lines changed

2 files changed

+20
-11
lines changed

seleniumbase/__version__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# seleniumbase package
2-
__version__ = "2.4.29"
2+
__version__ = "2.4.30"

seleniumbase/core/browser_launcher.py

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -512,7 +512,7 @@ def _set_firefox_options(
512512
options.set_preference("pdfjs.disabled", True)
513513
options.set_preference("app.update.auto", False)
514514
options.set_preference("app.update.enabled", False)
515-
options.set_preference("app.update.silent", False)
515+
options.set_preference("app.update.silent", True)
516516
options.set_preference("browser.formfill.enable", False)
517517
options.set_preference("browser.privatebrowsing.autostart", False)
518518
options.set_preference("devtools.errorconsole.enabled", True)
@@ -524,7 +524,7 @@ def _set_firefox_options(
524524
options.set_preference("extensions.systemAddon.update.enabled", False)
525525
options.set_preference("extensions.update.autoUpdateDefault", False)
526526
options.set_preference("extensions.update.enabled", False)
527-
options.set_preference("extensions.update.silent", False)
527+
options.set_preference("extensions.update.silent", True)
528528
options.set_preference("datareporting.healthreport.service.enabled", False)
529529
options.set_preference("datareporting.healthreport.uploadEnabled", False)
530530
options.set_preference("datareporting.policy.dataSubmissionEnabled", False)
@@ -619,12 +619,10 @@ def _set_firefox_options(
619619
raise Exception(
620620
'Incorrect formatting for Firefox "pref:value" set!'
621621
)
622-
f_pref = firefox_pref_item.strip()
623622
if needs_conversion:
624-
f_pref_value = firefox_pref_item.strip()
625-
if f_pref_value.lower == "true" or len(f_pref_value) == 0:
623+
if f_pref_value.lower() == "true" or len(f_pref_value) == 0:
626624
f_pref_value = True
627-
elif f_pref_value.lower == "false":
625+
elif f_pref_value.lower() == "false":
628626
f_pref_value = False
629627
elif f_pref_value.isdigit():
630628
f_pref_value = int(f_pref_value)
@@ -1433,10 +1431,21 @@ def get_local_driver(
14331431
if selenium4:
14341432
service = FirefoxService(
14351433
executable_path=LOCAL_GECKODRIVER)
1436-
return webdriver.Firefox(
1437-
service=service,
1438-
options=firefox_options,
1439-
)
1434+
try:
1435+
return webdriver.Firefox(
1436+
service=service,
1437+
options=firefox_options,
1438+
)
1439+
except Exception as e:
1440+
if "Process unexpectedly closed" in e.msg:
1441+
# Firefox probably just auto-updated itself.
1442+
# Trying again right after that often works.
1443+
return webdriver.Firefox(
1444+
service=service,
1445+
options=firefox_options,
1446+
)
1447+
else:
1448+
raise Exception(e.msg) # Not an obvious fix.
14401449
else:
14411450
return webdriver.Firefox(
14421451
executable_path=LOCAL_GECKODRIVER,

0 commit comments

Comments
 (0)