at backyard

Color my life with the chaos of trouble.

Seleniumで現在利用しているChromeのUser Agentを取得する方法

Seleniumで現在動かしているChromeのUser Agentを取得する方法について調べたので、備忘録がてら書き残しておく。

といっても仕組みは単純で、例えばChromeの場合、下記のようにConsoleを開いてnavigator.userAgentと打つことでUser Agentは取得することができる。

f:id:shinshin86:20220121075356p:plain
Chromeの開発者コンソールでUser Agentを表示させたところ

これと同じ操作をSelenium上で行うだけ。

コードサンプルは下記となる。
(なお、最近は webdriver_manager を利用しているので、これを併用した前提のコードとなっている。webdriver_manager、便利です。)

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


def main():
    s=Service(ChromeDriverManager().install())
    driver = webdriver.Chrome(service=s)

    # このブログにアクセス
    # (注: 最初はlocalhost:3000にアクセスしようとしたが、それだとWebDriverException: Message: unknown error: net::ERR_CONNECTION_REFUSEDになるので、実際のサイトにアクセス)
    driver.get("https://shinshin86.hateblo.jp")

    user_agent = driver.execute_script("return navigator.userAgent")
    print(user_agent)


if __name__ == "__main__":
    main()

このコードを実行すると、User Agentが表示されるのが分かるかと思う。

以上、備忘録でした。