为什么部署后运行时会显示创建 ChromiumPage 失败:
The browser connection fails.
Address: 127.0.0.1:9222
Tip:
1, the user folder does not conflict with the open browser
2, if no interface system, please add '--headless=new' startup parameter
3, if the system is Linux, try adding '--no-sandbox' boot parameter
The port and user folder paths can be set using ChromiumOptions.
Version: 4.1.1.2
浏览器启动失败,程序终止 可是已经弄了headless和sandbox了,而且docker里也安装浏览器了
def create_chromium_page():
"""
创建 ChromiumPage,兼容 Linux headless、no-display、no-sandbox。
"""
try:
opts = ChromiumOptions()
opts.headless = "new" # Linux/Docker 无显示必须 headless
# Linux 下禁用 sandbox
if sys.platform.startswith("linux"):
opts.args = ["--no-sandbox", "--disable-dev-shm-usage"]
# 指定 Chromium 可执行文件路径(Docker 中的路径)
opts.executable_path = "/usr/bin/chromium"
# 指定用户数据目录,避免多实例冲突
opts.user_data_dir = "/tmp/drission_user_data"
page = ChromiumPage(opts)
return page
except Exception as e:
print(f"创建 ChromiumPage 失败: {e}")
return None
————————————————