You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Java版Selenium在Firefox中获取网络及端点信息

火狐(GeckoDriver)获取网络日志的实现方案

问题根因

Chrome的goog:loggingPrefs属于Chrome内核专属的能力配置,GeckoDriver不支持该参数,直接复用Chrome逻辑会导致参数解析失败,抛出你遇到的JSON异常。

实现步骤

  • 优先使用Selenium 4.x版本,该版本内置对Firefox DevTools的原生支持,比Selenium 3.x的旧实现兼容性更好,注意确保Selenium版本、GeckoDriver版本、Firefox浏览器版本三者匹配
  • 参考如下代码完成配置和日志采集:
import org.openqa.selenium.firefox.FirefoxOptions;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.devtools.DevTools;
// 注意引入的DevTools API版本要和你使用的Firefox内核版本对应,示例为v123,可根据自己的浏览器版本调整
import org.openqa.selenium.devtools.v123.network.Network;
import java.util.Optional;

// 1. 配置Firefox启动参数
FirefoxOptions options = new FirefoxOptions();
// 开启网络、性能日志采集开关
options.addPreference("devtools.performance.enabled", true);
options.addPreference("devtools.netmonitor.enabled", true);

// 2. 初始化驱动和DevTools会话
FirefoxDriver driver = new FirefoxDriver(options);
DevTools devTools = driver.getDevTools();
devTools.createSession();

// 3. 启用Network域监听
devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty()));

// 4. 监听所有请求事件,获取请求端点、方法、请求头、请求体等信息
devTools.addListener(Network.requestWillBeSent(), request -> {
    String endpointUrl = request.getRequest().getUrl();
    String requestMethod = request.getRequest().getMethod();
    // 可自行扩展逻辑存储、过滤需要的请求信息
    System.out.println("请求地址:" + endpointUrl + " | 请求方法:" + requestMethod);
});

// 5. 监听所有响应事件,获取响应状态、响应头、响应体等信息
devTools.addListener(Network.responseReceived(), response -> {
    String endpointUrl = response.getResponse().getUrl();
    int responseStatus = response.getResponse().getStatus();
    System.out.println("响应地址:" + endpointUrl + " | 响应状态:" + responseStatus);
    // 如需获取响应体可调用如下方法
    // String responseBody = devTools.send(Network.getResponseBody(response.getRequestId())).getBody();
});

注意事项

  • 启动驱动后要先开启DevTools监听再访问目标页面,避免请求遗漏
  • 如果使用Selenium 3.x版本,需要额外配置marionette相关参数并通过解析火狐的性能日志文件获取信息,稳定性较差,建议优先升级Selenium版本

内容的提问来源于stack exchange,提问作者user15415647

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 19:06:04