如何在 Brave 网络浏览器上 运行 Selenium 测试?
How to run Selenium tests on the Brave web browser?
我正在尝试 运行 在 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);
郑重声明:这不再是问题,因为 Brave 使用了全 Chromium(从 0.57 版开始)。我现在可以通过使用问题中包含的代码片段对其进行初始化来将指令传递给 WebDriver。
尽管如此,请务必检查您的 ChromeDriver 版本是否与您的 Brave 浏览器版本兼容。
系统:
macOS 卡特琳娜 10.15.2
Python3.7.4
测试 5.3.2
硒 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://whosebug.com')
参考:
对于 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);
谢谢,@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)
再次感谢您的帮助。
我无法通过上述示例找到成功,但我确实设法让它像这样工作:
const chrome = require('selenium-webdriver/chrome')
const chromeOptions = new chrome.Options()
chromeOptions.setChromeBinaryPath('/usr/bin/brave-browser')
我正在尝试 运行 在 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);
郑重声明:这不再是问题,因为 Brave 使用了全 Chromium(从 0.57 版开始)。我现在可以通过使用问题中包含的代码片段对其进行初始化来将指令传递给 WebDriver。
尽管如此,请务必检查您的 ChromeDriver 版本是否与您的 Brave 浏览器版本兼容。
系统:
macOS 卡特琳娜 10.15.2
Python3.7.4
测试 5.3.2
硒 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://whosebug.com')
参考:
对于 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);
谢谢,@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)
再次感谢您的帮助。
我无法通过上述示例找到成功,但我确实设法让它像这样工作:
const chrome = require('selenium-webdriver/chrome')
const chromeOptions = new chrome.Options()
chromeOptions.setChromeBinaryPath('/usr/bin/brave-browser')