eric7/WebBrowser/Tools/WebBrowserTools.py

branch
eric7
changeset 9167
2d2b9a26e904
parent 9162
8b75b1668583
equal deleted inserted replaced
9166:420cca1c5b6d 9167:2d2b9a26e904
212 return url 212 return url
213 213
214 214
215 def getWebEngineVersions(): 215 def getWebEngineVersions():
216 """ 216 """
217 Module function to extract the web engine version from the default user 217 Module function to extract the web engine related versions from the default
218 agent string. 218 user agent string.
219 219
220 @return tuple containing the Chrome version and the QtWebEngine version 220 Note: For PyQt 6.3.1 or newer the data is extracted via some Qt functions.
221 @rtype tuple of str 221
222 """ 222 @return tuple containing the Chromium version, the Chromium security patch
223 from PyQt6.QtWebEngineCore import QWebEngineProfile 223 version and the QtWebEngine version
224 224 @rtype tuple of (str, str, str)
225 useragent = QWebEngineProfile.defaultProfile().httpUserAgent() 225 """
226 match = re.search(r"""Chrome/([\d.]+)""", useragent) 226 try:
227 chromeVersion = ( 227 from PyQt6.QtWebEngineCore import (
228 match.group(1) 228 qWebEngineVersion, qWebEngineChromiumVersion,
229 if match else 229 qWebEngineChromiumSecurityPatchVersion
230 QCoreApplication.translate("WebBrowserTools", "<unknown>") 230 )
231 ) 231 chromiumVersion = qWebEngineChromiumVersion()
232 match = re.search(r"""QtWebEngine/([\d.]+)""", useragent) 232 chromiumSecurityVersion = qWebEngineChromiumSecurityPatchVersion()
233 webengineVersion = ( 233 webengineVersion = qWebEngineVersion()
234 match.group(1) 234 except ImportError:
235 if match else 235 # backwards compatibility for PyQt < 6.3.1
236 QCoreApplication.translate("WebBrowserTools", "<unknown>") 236 from PyQt6.QtWebEngineCore import QWebEngineProfile
237 ) 237
238 return (chromeVersion, webengineVersion) 238 useragent = QWebEngineProfile.defaultProfile().httpUserAgent()
239 match = re.search(r"""Chrome/([\d.]+)""", useragent)
240 chromiumVersion = (
241 match.group(1)
242 if match else
243 QCoreApplication.translate("WebBrowserTools", "<unknown>")
244 )
245 match = re.search(r"""QtWebEngine/([\d.]+)""", useragent)
246 webengineVersion = (
247 match.group(1)
248 if match else
249 QCoreApplication.translate("WebBrowserTools", "<unknown>")
250 )
251 chromiumSecurityVersion = ""
252 # not available via the user agent string
253
254 return (chromiumVersion, chromiumSecurityVersion, webengineVersion)
239 255
240 256
241 def getHtmlPage(pageFileName): 257 def getHtmlPage(pageFileName):
242 """ 258 """
243 Module function to load a HTML page. 259 Module function to load a HTML page.

eric ide

mercurial