23

我正在尝试在 Brave 网络浏览器上运行一些 Selenium 测试。我可以使用 ChromeDriver 通过 Selenium 启动 Brave 网络浏览器。但是,没有其他方法起作用,例如我无法让 Brave 加载某个网页。

由于 Brave 基于 Chromium,我认为这是要走的路。是否有更合适的方式支持 Brave 由 Selenium 驱动?

这是我使用的解码代码:

    ChromeOptions options = new ChromeOptions().setBinary("/Applications/Brave.app/Contents/MacOS/brave");
    WebDriver driver = new ChromeDriver(options);
4

5 回答 5

11

郑重声明:自从 Brave 采用全 Chromium(从 0.57 版开始)以来,这不再是一个问题。我现在可以通过使用问题中包含的代码片段对其进行初始化,将指令传递给 WebDriver。

不过,请务必检查您的 ChromeDriver 版本是否与您的 Brave 浏览器版本兼容。

于 2019-04-29T10:07:27.950 回答
8

系统:
macOS Catalina 10.15.2
Python 3.7.4
pytest 5.3.2
selenium 3.141.0
ChromeDriver 79.0.3945.36
Brave 1.1.23 Chromium:79.0.3945.88(官方构建)(64位)

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.binary_location = '/Applications/Brave Browser.app/Contents/MacOS/Brave Browser'
driver_path = '/usr/local/bin/chromedriver'
drvr = webdriver.Chrome(options = options, executable_path = driver_path)
drvr.get('https://stackoverflow.com')

参考:
在Python中通过chromedriver设置chrome浏览器二进制

于 2019-12-23T09:28:46.380 回答
1

谢谢@BarneyKelly,就像一个魅力!在 python3(Linux Mint 2020)中,我使用了:

def abre_navegador(self):
    # Avenue_Basico.wd = webdriver.Firefox()   # Criar instância do navegador 
    # Avenue_Basico.wd = webdriver.Chrome()   # Criar instância do navegador

    options = Options()
    options.binary_location = '/usr/bin/brave-browser'
    driver_path = '/usr/local/bin/chromedriver'
    self.wd = webdriver.Chrome(options = options, executable_path = driver_path)

再次感谢您的帮助。

于 2020-07-27T13:23:59.587 回答
1

对于您的情况,Windows 用户路径必须是绝对的

System.setProperty("webdriver.chrome.driver","E:\\WEBDRIVER PLUGINS\\chromedriver_win32\\chromedriver.exe");
ChromeOptions options = new ChromeOptions().setBinary("C:\\Program Files (x86)\\BraveSoftware\\Brave-Browser\\Application\\brave.exe");
WebDriver driver = new ChromeDriver(options);
于 2020-01-06T16:59:53.097 回答
0

尽管我确实设法让它像这样工作,但我无法通过上述示例找到成功:

const chrome = require('selenium-webdriver/chrome')

const chromeOptions = new chrome.Options()

chromeOptions.setChromeBinaryPath('/usr/bin/brave-browser')
于 2021-11-05T14:41:01.067 回答