如何在 Selenium Java 中检索浏览器日志

问题描述 投票:0回答:1

我正在一个基于java的selenium项目中工作,我想使用LoggerUtil类检索打印到控制台的日志消息。

这就是我的实现方式

LogEntries entry = driver.manage().logs().get(LogType.BROWSER);
    List<LogEntry> logs= entry.getAll();
    for(LogEntry e: logs)
          {
             System.out.println(e);
           }

使用这段代码,我可以将错误打印到控制台。时间戳和日志级别已正确检索。但日志消息输出一个以“https://www.google.com/xjs/_/js/k=xjs.hd.en”开头的 google url

知道如何获取实际消息而不是这个消息吗?

java selenium-webdriver logging
1个回答
0
投票

尝试研究 Selenium 4 DevTools

例如

     DevTools devTools = driver.getDevTools();
        devTools.createSession();
        devTools.send(Log.enable());

devTools.addListener(Log.entryAdded(), logEntry -> {
        System.out.println("-------------------------------------------");
        System.out.println("Request ID = " + logEntry.getNetworkRequestId());
        System.out.println("URL = " + logEntry.getUrl());
        System.out.println("Source = " + logEntry.getSource());
        System.out.println("Level = " + logEntry.getLevel());
        System.out.println("Text = " + logEntry.getText());
        System.out.println("Timestamp = " + logEntry.getTimestamp());
        System.out.println("-------------------------------------------");
        });
        driver.get("https://www.qed42.com/404");
    }

更多信息来源:https://www.qed42.com/insights/selenium-4-api-for-chrome-devtools

© www.soinside.com 2019 - 2024. All rights reserved.