われがわログ

最適化アルゴリズムとかプログラミングについて書きたい

agoutiを使ってスクレイピングするときの余分な表示を消す

Golang + agouti + ChromeDriver + Chromeスクレイピングをしていたが、プログラム実行時に毎回「DevTools listening on ws://127.0.0.1:2441/devtools/browser/8fd65422-e774-4d35-a0cc-036de4564b9a」のような表示が出て煩かったので、これを非表示にする方法を調べた。

結論から言うと、argsexcludeSwitchesの2つのオプションを以下のようにChromeDriverに渡せばよい。

   chromeArgs := agouti.ChromeOptions(
        "args", []string{
            "--headless",
            "--disable-gpu",
        })
    chromeExcludeSwitches := agouti.ChromeOptions(
        "excludeSwitches", []string{
            "enable-logging",
        })

    driver := agouti.ChromeDriver(chromeArgs, chromeExcludeSwitches)
    defer driver.Stop()
    //本当はエラーハンドリングが必要
    driver.Start()
    page, _ := driver.NewPage()
    page.Navigate(URL)
    //以下、必要な処理を行う

stackoverflow.com

bugs.chromium.org