gpt4 book ai didi

java - 无法使用 BrowserMob-Proxy(PhantomJS) 捕获 HAR 请求和响应

转载 作者:行者123 更新时间:2023-11-30 07:07:17 26 4
gpt4 key购买 nike

我无法使用 browsermob(selenium+PhantomJS 浏览器)捕获请求和响应

请引用示例代码

server = new BrowserMobProxyServer();
server.start(0);
server.newHar("contracts");

能力:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setJavascriptEnabled(true); capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS,
new String[] {"--web-security=false", "--ssl-protocol=any",
"--ignore-ssl-errors=yes"});
capabilities.setCapability("takeScreenshot", true);
URL hubUrl = new URL("http://152.188.0.42:5555/wd/hub");
server.enableHarCaptureTypes(CaptureType.REQUEST_CONTENT, CaptureType.RESPONSE_CONTENT);

启动应用程序:

driver = new RemoteWebDriver(hubUrl,capabilities);
driver.get("http://www.google.com");

创建 har 文件:

Har har = server.getHar();
FileOutputStream fos = new FileOutputStream("runnowNew.har");
har.writeTo(fos);

使用上述代码生成的Har:

{
"log":
{
"version":"1.2",
"creator":{"name":"BrowserMob Proxy","version":"2.1.2","comment":""},
"pages":[{"id":"contracts","startedDateTime":"2016-10-05T12:56:33.460+05:30","title":"contracts","pageTimings":{"comment":""},"comment":""}],
"entries":[],
"comment":""
}
}

最佳答案

我认为问题在于您没有使用 BrowserMob Proxy 作为 Selenium 流量的代理。您需要将 Selenium 的代理(IP 和端口)设置为 BrowserMob Proxy 中配置的代理。IP 可能是 127.0.0.1,因为您在本地工作,并且您可以使用 server.getPort() 获取 BrowserMob Proxy 正在监听的端口到。

关于java - 无法使用 BrowserMob-Proxy(PhantomJS) 捕获 HAR 请求和响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39868526/

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