gpt4 book ai didi

javascript - Selenium +火狐 : How can I go with both Firefox binary specification and Firebug extension addition?

转载 作者:太空宇宙 更新时间:2023-11-04 00:47:31 25 4
gpt4 key购买 nike

目前我正在使用以下代码。

var co = require('co');
var WebDriver = require('selenium-webdriver');
var SeleniumServer = require('selenium-webdriver/remote').SeleniumServer;

co(function *() { // async
var server = new SeleniumServer('/path/to/selenium', {
port: 4444,
jvmArgs: ['-Dwebdriver.firefox.bin=path/to/firefox'] // Firefox binary specification
});
yield server.start(); // await
var driver = new WebDriver
.Builder()
.usingServer(server.address())
.withCapabilities(WebDriver.Capabilities.firefox())
.build();

});

现在我需要添加 Firebug 扩展以将网络流量提取为 *.har 文件。我用谷歌搜索找到this :

var firefox = require('selenium-webdriver/firefox');

var profile = new firefox.Profile();
profile.addExtension('/path/to/firebug.xpi');
profile.setPreference('extensions.firebug.showChromeErrors', true);

var options = new firefox.Options().setProfile(profile);
var driver = new firefox.Driver(options);

要看到这一点,似乎可以使用以下方法:

  • firefox.Options().setProfile()
  • firefox.Options().setBinary()

但是,firefox.Options() 总是不返回任何内容...

enter image description here

发生什么事了?

最佳答案

根据source codeOptions() 函数调用应该不返回任何内容:

var Options = function() {
/** @private {Profile} */
this.profile_ = null;

/** @private {Binary} */
this.binary_ = null;

/** @private {webdriver.logging.Preferences} */
this.logPrefs_ = null;

/** @private {webdriver.ProxyConfig} */
this.proxy_ = null;
};

您需要使用new来初始化Options对象:

var options = new firefox.Options();
console.log(options);

其中有许多可用的方法,包括 setProfile()setBinary() 等。

关于javascript - Selenium +火狐 : How can I go with both Firefox binary specification and Firebug extension addition?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33973801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com