Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion mkdocs_build/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

regex>=2026.6.28
pymdown-extensions>=10.21.3
pipdeptree>=3.1.0
pipdeptree>=3.1.1
python-dateutil>=2.8.2
click>=8.4.2
Markdown==3.10.2
Expand Down
9 changes: 5 additions & 4 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ exceptiongroup>=1.3.1
websockets~=15.0.1;python_version<"3.10"
websockets>=16.0;python_version>="3.10"
filelock~=3.19.1;python_version<"3.10"
filelock>=3.29.4;python_version>="3.10"
filelock>=3.29.5;python_version>="3.10"
fasteners>=0.20
mycdp>=1.4.0
pynose>=1.5.5
platformdirs~=4.4.0;python_version<"3.10"
platformdirs>=4.10.0;python_version>="3.10"
typing-extensions>=4.15.0
typing-extensions>=4.16.0
sbvirtualdisplay>=1.4.0
MarkupSafe>=3.0.3
Jinja2>=3.1.6
Expand Down Expand Up @@ -61,7 +61,8 @@ pytest-html==4.0.2
pytest-metadata==3.1.1
pytest-ordering==0.6
pytest-rerunfailures==16.0.1;python_version<"3.10"
pytest-rerunfailures==16.3;python_version>="3.10"
pytest-rerunfailures==16.3;python_version=="3.10"
pytest-rerunfailures==16.4;python_version>="3.11"
pytest-xdist==3.8.0
parameterized==0.9.0
behave==1.2.6
Expand All @@ -79,7 +80,7 @@ rich>=15.0.0,<16
# ("pip install -r requirements.txt" also installs this, but "pip install -e ." won't.)

coverage>=7.10.7;python_version<"3.10"
coverage>=7.14.3;python_version>="3.10"
coverage>=7.15.0;python_version>="3.10"
pytest-cov>=7.1.0
flake8==7.3.0
mccabe==0.7.0
Expand Down
2 changes: 1 addition & 1 deletion seleniumbase/__version__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# seleniumbase package
__version__ = "4.50.4"
__version__ = "4.50.5"
20 changes: 19 additions & 1 deletion seleniumbase/core/browser_launcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -2816,7 +2816,13 @@ def _set_chrome_options(
d_f_string = ",".join(included_disabled_features)
chrome_options.add_argument("--disable-features=%s" % d_f_string)
chrome_options.add_argument("--enable-unsafe-extension-debugging")
chrome_options.add_argument("--test-type")
if (
hasattr(sb_config, "_cdp_browser")
and sb_config._cdp_browser == "brave"
):
pass # Looks like "--test-type" breaks Brave now
else:
chrome_options.add_argument("--test-type")
if proxy_auth or sb_config._ext_dirs:
if not is_using_uc(undetectable, browser_name):
chrome_options.add_argument("--remote-debugging-pipe")
Expand Down Expand Up @@ -3120,6 +3126,11 @@ def get_driver(
if browser_name in constants.ChromiumSubs.chromium_subs:
browser_name = "chrome"
browser_name = browser_name.lower()
if (
hasattr(sb_config, "_cdp_browser")
and sb_config._cdp_browser == "brave"
):
undetectable = True
if is_using_uc(undetectable, browser_name):
if ad_block_on:
sb_config.ad_block_on = True
Expand Down Expand Up @@ -5146,6 +5157,13 @@ def get_local_driver(
sb_config.multi_proxy = True
if uc_driver_version and driver_version == "keep":
driver_version = uc_driver_version
if (
hasattr(sb_config, "_cdp_browser")
and sb_config._cdp_browser == "opera"
):
use_version = "132"
if use_uc:
use_version = "144"
use_version = find_chromedriver_version_to_use(
use_version, driver_version
)
Expand Down
12 changes: 10 additions & 2 deletions seleniumbase/undetected/cdp_driver/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import tempfile
import zipfile
from contextlib import suppress
from seleniumbase import config as sb_config
from seleniumbase.config import settings
from seleniumbase.drivers import cft_drivers
from seleniumbase.drivers import chromium_drivers
Expand Down Expand Up @@ -238,12 +239,10 @@ def __init__(
"--enable-privacy-sandbox-ads-apis",
"--safebrowsing-disable-download-protection",
'--simulate-outdated-no-au="Tue, 31 Dec 2099 23:59:59 GMT"',
"--test-type",
"--ash-no-nudges",
"--password-store=basic",
"--deny-permission-prompts",
"--disable-breakpad",
"--disable-setuid-sandbox",
"--disable-prompt-on-repost",
"--disable-application-cache",
"--disable-password-generation",
Expand All @@ -262,6 +261,15 @@ def __init__(
"--disable-renderer-backgrounding",
"--disable-dev-shm-usage",
]
if (
hasattr(sb_config, "_cdp_browser")
and sb_config._cdp_browser == "brave"
):
pass # Looks like "--test-type" breaks Brave now
else:
self._default_browser_args.append("--test-type")
if IS_LINUX:
self._default_browser_args.append("--disable-setuid-sandbox")
if mock_keychain:
self._default_browser_args.append("--use-mock-keychain")

Expand Down
11 changes: 6 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -174,13 +174,13 @@
'websockets~=15.0.1;python_version<"3.10"',
'websockets>=16.0;python_version>="3.10"',
'filelock~=3.19.1;python_version<"3.10"',
'filelock>=3.29.4;python_version>="3.10"',
'filelock>=3.29.5;python_version>="3.10"',
'fasteners>=0.20',
'mycdp>=1.4.0',
'pynose>=1.5.5',
'platformdirs~=4.4.0;python_version<"3.10"',
'platformdirs>=4.10.0;python_version>="3.10"',
'typing-extensions>=4.15.0',
'typing-extensions>=4.16.0',
'sbvirtualdisplay>=1.4.0',
'MarkupSafe>=3.0.3',
'Jinja2>=3.1.6',
Expand Down Expand Up @@ -225,7 +225,8 @@
'pytest-metadata==3.1.1',
'pytest-ordering==0.6',
'pytest-rerunfailures==16.0.1;python_version<"3.10"',
'pytest-rerunfailures==16.3;python_version>="3.10"',
'pytest-rerunfailures==16.3;python_version=="3.10"',
'pytest-rerunfailures==16.4;python_version>="3.11"',
'pytest-xdist==3.8.0',
'parameterized==0.9.0',
'behave==1.2.6', # Newer ones had issues
Expand All @@ -252,7 +253,7 @@
# Usage: coverage run -m pytest; coverage html; coverage report
"coverage": [
'coverage>=7.10.7;python_version<"3.10"',
'coverage>=7.14.3;python_version>="3.10"',
'coverage>=7.15.0;python_version>="3.10"',
'pytest-cov>=7.1.0',
],
# pip install -e .[flake8]
Expand Down Expand Up @@ -282,7 +283,7 @@
# (An optional library for image-processing.)
"pillow": [
'Pillow>=11.3.0;python_version<"3.10"',
'Pillow>=12.2.0;python_version>="3.10"',
'Pillow>=12.3.0;python_version>="3.10"',
],
# pip install -e .[pip-system-certs]
# (If you see [SSL: CERTIFICATE_VERIFY_FAILED], then get this.)
Expand Down