YOGYUI

PyQt5 - QtWebEngine Chromium Version 확인하기 본문

Software/Python

PyQt5 - QtWebEngine Chromium Version 확인하기

요겨 2021. 9. 10. 12:16
반응형

 

일전에 PyQt를 사용해서 내가 직접 만든 웹브라우저(링크)로 내 블로그를 방문하는 테스트를 진행했는데, 네이버 애널리틱스의 '사용자 웹브라우저' 분석에 'Chrome 83' 항목이 새로 생긴 것을 볼 수 있었다

네이버 애널리틱스 분석 결과

 

QtWebEngine의 Chromium 버전은 다음과 같다고 한다

https://wiki.qt.io/QtWebEngine/ChromiumVersions

내 개발환경이 Qt 5.15.2니깐 Chromium 83이 코어로 사용되었다는 것을 알게 되었다 ㅎㅎ

 

일일이 Qt 버전을 확인하지 않고 브라우저 버전 정보를 가져올 수 있는 방법을 찾다가, 자바스크립트로 'navigator.userAgent'를 호출하면 된다는 것을 확인했다

https://www.w3schools.com/jsref/prop_nav_useragent.asp

 

Navigator userAgent Property

Navigator userAgent Property ❮ Navigator Object Example The user-agent header sent by your browser is: var x = "User-agent header sent: " + navigator.userAgent; The result of x will be: document.write("User-agent header sent: " + navigator.userAgent); --

www.w3schools.com

 

바로 테스트해보자

 

[데모 코드]

from PyQt5.QtCore import QVariant
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView

def callback(v: QVariant):
    print(v)

app = QApplication([])
view = QWebEngineView()
view.page().runJavaScript('navigator.userAgent', callback)
app.exec_()

[출력 결과]

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) QtWebEngine/5.15.2 Chrome/83.0.4103.122 Safari/537.36

Chrome-83.0.4103.122 가 표기된 것을 알 수 있다

 

참고로 구글 크롬의 개발자 도구 (F12)에서도 동일한 스크립트를 돌려볼 수 있다

구글 크롬 개발자도구에서 JS 실행

크롬은 자동업데이트 기능을 켜뒀더니 알아서 최신버전 (2021-09-10 기준 93.0.4577.63)으로 유지되고 있는 것 같다

 

크롬 최신버전 (9x)로 넘어가려면 Qt도 버전 6으로 갈아타야되는데... 아직 써본적이 없어서 쩝 ㅋㅋ

언젠가는 넘어가야겠지라고 생각만 하고 있다

 

[참고]

https://stackoverflow.com/questions/62111129/how-to-determine-which-chromium-version-is-used-by-qtwebengine-in-qt-5-at-run-ti

반응형