From 1773dc780648fe6564d0cb807c25b7f541adc1f0 Mon Sep 17 00:00:00 2001 From: SXP-Simon Date: Fri, 10 Oct 2025 19:20:21 +0800 Subject: [PATCH] =?UTF-8?q?[debug]=20=E8=B0=83=E8=AF=95=20chromium=20?= =?UTF-8?q?=E6=89=93=E5=BC=80=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/reports/generators.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/reports/generators.py b/src/reports/generators.py index b70ad1c..fb3c04e 100644 --- a/src/reports/generators.py +++ b/src/reports/generators.py @@ -371,6 +371,20 @@ class ReportGenerator: if not found_browser: logger.info("未找到系统浏览器,将使用 pyppeteer 默认下载的 Chromium") + # 先尝试确保 Chromium 已下载 + try: + from pyppeteer import connection, browser, launcher + launcher_instance = launcher.Launcher( + headless=True, + args=['--no-sandbox', '--disable-setuid-sandbox', '--disable-dev-shm-usage'] + ) + await launcher_instance._get_chromium_revision() + await launcher_instance._download_chromium() + chromium_path = pyppeteer.executablePath() + launch_options['executablePath'] = chromium_path + logger.info(f"使用 pyppeteer 下载的 Chromium: {chromium_path}") + except Exception as pre_download_err: + logger.warning(f"预下载 Chromium 失败,继续尝试直接启动: {pre_download_err}") # 尝试启动浏览器 try: