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

Heroku部署报错:Chromedriver Buildpack提示‘End-of-central-directory signature not found’

Heroku部署Python爬虫应用:Chromedriver下载失败修复方案

核心修复步骤

  • 锁定Chrome与Chromedriver匹配版本
    不要使用LATEST,手动匹配版本:

    1. 查看Heroku构建日志中Chrome的安装版本(比如Installing google-chrome-stable 118.0.5993.70)
    2. 找到对应版本的Chromedriver(两者主版本必须完全一致)
    3. 在Heroku应用设置中添加两个环境变量:
      • GOOGLE_CHROME_VERSION=找到的Chrome版本号
      • CHROMEDRIVER_VERSION=对应Chromedriver版本号
  • 清理Heroku构建缓存
    本地终端执行命令清除缓存,避免损坏文件残留:

    heroku builds:cache:purge -a 你的应用名称
    

    之后重新推送代码触发构建。

  • 更换整合型构建包
    替换原有的两个分开构建包,改用自动匹配版本的整合包,修改buildpacks为:

    https://github.com/heroku/heroku-buildpack-python
    https://github.com/weibeld/heroku-buildpack-chrome
    

    这个构建包会自动同步Chrome和Chromedriver版本,减少下载异常。

  • 切换Chromedriver下载源
    如果官方源访问不稳定,添加自定义下载源:

    1. 在项目根目录创建.profile.d/chromedriver.sh,内容:
      export CHROMEDRIVER_URL="https://npm.taobao.org/mirrors/chromedriver/${CHROMEDRIVER_VERSION}/chromedriver_linux64.zip"
      
    2. 将该文件加入Git并推送,构建时会从国内镜像下载。

验证部署结果

部署完成后,通过终端进入Heroku容器验证:

heroku run bash -a 你的应用名称
# 进入后执行
chromedriver --version
google-chrome --version

确认两者版本一致且能正常输出信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 22:32:57