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. |