From 5846a70db998ef79a1b6ca05f02bdd6c2ab29c83 Mon Sep 17 00:00:00 2001 From: Michael Mintz Date: Wed, 5 Jun 2024 19:39:43 -0400 Subject: [PATCH 1/2] Refactor Chromium options --- seleniumbase/core/browser_launcher.py | 72 +++++++++++---------------- 1 file changed, 30 insertions(+), 42 deletions(-) diff --git a/seleniumbase/core/browser_launcher.py b/seleniumbase/core/browser_launcher.py index 77f8258210b..5e9638cc27f 100644 --- a/seleniumbase/core/browser_launcher.py +++ b/seleniumbase/core/browser_launcher.py @@ -1166,31 +1166,24 @@ def _set_chrome_options( chrome_options.add_argument("--no-crash-upload") chrome_options.add_argument("--deny-permission-prompts") included_disabled_features = [] + included_disabled_features.append("OptimizationHints") + included_disabled_features.append("OptimizationHintsFetching") + included_disabled_features.append("Translate") + included_disabled_features.append("OptimizationTargetPrediction") + included_disabled_features.append("OptimizationGuideModelDownloading") + included_disabled_features.append("DownloadBubble") + included_disabled_features.append("DownloadBubbleV2") + included_disabled_features.append("InsecureDownloadWarnings") + included_disabled_features.append("InterestFeedContentSuggestions") if user_data_dir: - included_disabled_features.append("OptimizationHintsFetching") - included_disabled_features.append("Translate") - included_disabled_features.append("OptimizationTargetPrediction") included_disabled_features.append("PrivacySandboxSettings4") - included_disabled_features.append("DownloadBubble") - included_disabled_features.append("DownloadBubbleV2") - included_disabled_features.append("InsecureDownloadWarnings") - for item in extra_disabled_features: - if item not in included_disabled_features: - included_disabled_features.append(item) - d_f_string = ",".join(included_disabled_features) - chrome_options.add_argument("--disable-features=%s" % d_f_string) - else: - included_disabled_features.append("OptimizationHintsFetching") - included_disabled_features.append("Translate") - included_disabled_features.append("OptimizationTargetPrediction") - included_disabled_features.append("DownloadBubble") - included_disabled_features.append("DownloadBubbleV2") - included_disabled_features.append("InsecureDownloadWarnings") - for item in extra_disabled_features: - if item not in included_disabled_features: - included_disabled_features.append(item) - d_f_string = ",".join(included_disabled_features) - chrome_options.add_argument("--disable-features=%s" % d_f_string) + if not is_using_uc(undetectable, browser_name) or user_data_dir: + included_disabled_features.append("SidePanelPinning") + for item in extra_disabled_features: + if item not in included_disabled_features: + included_disabled_features.append(item) + d_f_string = ",".join(included_disabled_features) + chrome_options.add_argument("--disable-features=%s" % d_f_string) if ( is_using_uc(undetectable, browser_name) and ( @@ -2828,27 +2821,22 @@ def get_local_driver( if disable_features: extra_disabled_features.extend(disable_features.split(",")) included_disabled_features = [] + included_disabled_features.append("OptimizationHints") + included_disabled_features.append("OptimizationHintsFetching") + included_disabled_features.append("Translate") + included_disabled_features.append("OptimizationTargetPrediction") + included_disabled_features.append("OptimizationGuideModelDownloading") + included_disabled_features.append("InsecureDownloadWarnings") + included_disabled_features.append("InterestFeedContentSuggestions") if user_data_dir: - included_disabled_features.append("OptimizationHintsFetching") - included_disabled_features.append("Translate") - included_disabled_features.append("OptimizationTargetPrediction") included_disabled_features.append("PrivacySandboxSettings4") - included_disabled_features.append("InsecureDownloadWarnings") - for item in extra_disabled_features: - if item not in included_disabled_features: - included_disabled_features.append(item) - d_f_string = ",".join(included_disabled_features) - edge_options.add_argument("--disable-features=%s" % d_f_string) - else: - included_disabled_features.append("OptimizationHintsFetching") - included_disabled_features.append("Translate") - included_disabled_features.append("OptimizationTargetPrediction") - included_disabled_features.append("InsecureDownloadWarnings") - for item in extra_disabled_features: - if item not in included_disabled_features: - included_disabled_features.append(item) - d_f_string = ",".join(included_disabled_features) - edge_options.add_argument("--disable-features=%s" % d_f_string) + if not is_using_uc(undetectable, browser_name) or user_data_dir: + included_disabled_features.append("SidePanelPinning") + for item in extra_disabled_features: + if item not in included_disabled_features: + included_disabled_features.append(item) + d_f_string = ",".join(included_disabled_features) + edge_options.add_argument("--disable-features=%s" % d_f_string) if (set_binary or IS_LINUX) and not binary_location: br_app = "edge" binary_loc = detect_b_ver.get_binary_location(br_app) From 0fd6223120c163d71ec9af778251585d09ab29cb Mon Sep 17 00:00:00 2001 From: Michael Mintz Date: Wed, 5 Jun 2024 19:39:58 -0400 Subject: [PATCH 2/2] Version 4.27.4 --- seleniumbase/__version__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/seleniumbase/__version__.py b/seleniumbase/__version__.py index 2a9143b8af9..aab03489fc5 100755 --- a/seleniumbase/__version__.py +++ b/seleniumbase/__version__.py @@ -1,2 +1,2 @@ # seleniumbase package -__version__ = "4.27.3" +__version__ = "4.27.4"