You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Google Colab中Altair保存PNG时反复出现MaxRetryError的解决方案

解决Colab中Altair保存PNG出现MaxRetryError的方案

问题根源

多次保存图表后,Selenium的Chrome驱动实例未被正确释放,导致本地连接池耗尽,新连接被拒绝。

方案1:手动管理Selenium驱动实例

手动初始化Chrome驱动,复用实例并在使用完成后主动关闭,避免连接泄漏:

from altair_saver import save
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 配置Colab适配的Chrome无头模式选项
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')

# 初始化驱动(仅需执行一次)
driver = webdriver.Chrome(options=chrome_options)

# 保存单个或多个图表
save(your_altair_chart, 'output.png', method='selenium', driver=driver)
# 可多次调用save复用同一个driver

# 所有保存操作完成后,关闭驱动释放资源
driver.quit()

方案2:清理残留进程(已出现错误时急救)

若已触发连接拒绝错误,先强制清理Colab环境中残留的Chrome和chromedriver进程,再重新初始化驱动:

!pkill chrome
!pkill chromedriver

方案3:替换为Node.js保存方法(无需Selenium)

切换到不需要Selenium的保存方式,避免连接问题:

  1. 安装依赖:
!pip install altair_saver
!apt-get install nodejs npm -y
!npm install -g vega-lite vega-cli canvas
  1. 保存图表:
from altair_saver import save
save(your_altair_chart, 'output.png', method='node')

内容的提问来源于stack exchange,提问作者KolvacS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:55:22