Selenium chromedriver禁用日志记录或将其重定向到Java

时间:2018-10-24 17:57:42

标签: java selenium logging selenium-chromedriver

我正在尝试在小型网络搜寻器中使用硒来获取页面源。我的输出日志受到硒日志的侵扰,有没有办法完全禁用日志记录或以某种方式将其重定向到/ dev / null?

日志消息如下:

Starting ChromeDriver 2.43.600233 
(523efee95e3d68b8719b3a1c83051aa63aa6b10d) on port 1628
Only local connections are allowed.
ott 24, 2018 7:52:01 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFORMAZIONI: Detected dialect: OSS

我通过以下方式呼叫驱动程序:

WebDriver driver = null;
            try {
            System.setProperty("webdriver.chrome.driver", "/usr/local/bin/chromedriver");
            ChromeOptions chromeOptions = new ChromeOptions();
            chromeOptions.setBinary("/usr/bin/chromium");
            chromeOptions.addArguments("--headless");
            chromeOptions.addArguments("--silent");
            chromeOptions.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR, UnexpectedAlertBehaviour.IGNORE);
            driver = new ChromeDriver(chromeOptions);
            /*FirefoxBinary firefoxBinary = new FirefoxBinary();
            firefoxBinary.addCommandLineOptions("--headless");
            System.setProperty("webdriver.gecko.driver", "/usr/local/bin/geckodriver");
            System.setProperty(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE, "true");
            System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE, "/dev/null");


            FirefoxOptions firefoxOptions = new FirefoxOptions();
            firefoxOptions.setBinary(firefoxBinary);
            FirefoxDriver driver = new FirefoxDriver(firefoxOptions);*/
            if(driver!=null) {
            driver.get(link);

3 个答案:

答案 0 :(得分:4)

好吧,我终于摆脱了无用的日志。这是我所做的。
使用:
System.setProperty("webdriver.chrome.silentOutput", "true");

要摆脱chromedriver日志,

  

启动ChromeDriver 2.43.600233   端口1628上的(523efee95e3d68b8719b3a1c83051aa63aa6b10d)仅本地   允许连接。


并使用: java.util.logging.Logger.getLogger("org.openqa.selenium").setLevel(Level.OFF);
要摆脱硒记录:

  

ott 24,2018 7:52:01 PM org.openqa.selenium.remote.ProtocolHandshake   createSession INFORMAZIONI:检测到的方言:OSS

答案 1 :(得分:0)

醉猫的答案是正确的,并且非常有用,它可以消除日志中的100条毫无意义的信息。也许使用java.util.logging.Logger.getLogger("org.openqa.selenium").setLevel(Level.SEVERE);
捕获错误(用Level.SEVERE代替Level.OFF)

答案 2 :(得分:-1)

只用了醉猫-

java.util.logging.Logger.getLogger(“ org.openqa.selenium”)。setLevel(Level.OFF);

它完美地完成了工作。