gpt4 book ai didi

node.js - har 文件问题 browsermob-proxy 与 webdriverio

转载 作者:太空宇宙 更新时间:2023-11-04 02:14:21 24 4
gpt4 key购买 nike

我试图使用 browsermob-proxy thisthis与 webdriverio。它运行良好,但没有生成 har 文件。我尝试更改以下行

fs.writeFileSync('stuff.har', data, 'utf8');

fs.writeFile('/Users/abc/xyz/stuff.har', data, 'utf8');

在下面的代码中(来自上面的链接)

   var Proxy = require('browsermob-proxy').Proxy
, webdriverio = require("./node_modules/webdriverio/")
, fs = require('fs')
, proxy = new Proxy()
;
proxy.cbHAR('search.yahoo.com', doSeleniumStuff, function(err, data) {
if (err) {
console.error('ERR: ' + err);
} else {
fs.writeFileSync('stuff.har', data, 'utf8');

}
});

function doSeleniumStuff(proxy, cb) {
var browser = webdriverio.remote({
host: 'localhost'
, port: 4444
, desiredCapabilities: { browserName: 'firefox', seleniumProtocol: 'WebDriver', proxy: { httpProxy: proxy } }
});

browser
.init()
.url("http://search.yahoo.com")
.setValue("#yschsp", "javascript")
.submitForm("#sf")
.end(cb);
}

但该位置仍然没有生成 har 文件。这里缺少什么?

最佳答案

我终于能够运行下面的代码来生成 har 文件。请注意 doSeleniumStuff 函数从 .end(cb);.end().then(cb);

的细微变化
var Proxy = require('browsermob-proxy').Proxy
, webdriverio = require("./node_modules/webdriverio/")
, fs = require('fs')
, proxy = new Proxy()
;

proxy.cbHAR('search.yahoo.com', doSeleniumStuff, function(err, data) {

if (err) {

console.error('ERR: ' + err);
} else {

fs.writeFileSync('stuff.har', data, 'utf8');
//fs.writeFile('/Users/hanu/Desktop/amit/webdriverio/webdriverio-test/stuff.har', data, 'utf8');

}
});

function doSeleniumStuff(proxy, cb) {

var browser = webdriverio.remote({
host: 'localhost'
, port: 4444
, desiredCapabilities: { browserName: 'firefox', seleniumProtocol: 'WebDriver', proxy: { httpProxy: proxy } }
});

browser
.init()
.url("http://search.yahoo.com")
.setValue("#yschsp", "javascript")
.submitForm("#sf")
.end().then(cb);

}

关于node.js - har 文件问题 browsermob-proxy 与 webdriverio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36429065/

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