You need to enable JavaScript to run this app. 如何从Helm的GitHub仓库获取二进制文件并使用Python脚本下载?
优惠活动
大模型
产品
解决方案
定价
更多

如何从Helm的GitHub仓库获取二进制文件并使用Python脚本下载?

通过Python脚本下载Helm最新正式版本二进制文件

提前安装所需依赖:pip install pygithub requests

核心修改说明

  1. 二进制文件写入必须使用wb二进制写模式,不可使用普通文本写模式w
  2. 需先通过PyGithub获取仓库最新正式发布版本,遍历版本关联的发布资产匹配对应架构的二进制压缩包
  3. 二进制文件下载需要单独用requests库请求资产下载地址,写入本地文件
完整可运行代码
from github import Github
import requests

def get_helm(filename):
    # 使用with上下文管理器自动管理文件句柄,无需手动关闭
    with open(filename, 'wb') as f:
        # 如需提升接口请求限额,可在Github()中传入个人访问令牌,格式为Github("你的访问令牌")
        g = Github()
        r = g.get_repo("helm/helm")
        # 获取最新的非预发布正式版本
        latest_release = r.get_latest_release()
        # 遍历发布资产,匹配Linux amd64架构的二进制压缩包,可按需修改匹配规则
        target_asset = None
        for asset in latest_release.get_assets():
            if "linux" in asset.name and "amd64" in asset.name and asset.name.endswith(".tar.gz"):
                target_asset = asset
                break
        if not target_asset:
            raise Exception("未找到匹配架构的Helm二进制包")
        # 流式下载二进制内容写入文件,避免大文件占用过多内存
        resp = requests.get(target_asset.browser_download_url, stream=True)
        for chunk in resp.iter_content(chunk_size=8192):
            f.write(chunk)
    return filename
注意事项
  • 无GitHub认证的情况下单IP每小时最多可调用60次GitHub公开接口,调用频率较高时建议传入个人访问令牌,可将限额提升到每小时5000次
  • 上述代码默认匹配Linux amd64架构的二进制包,如需其他架构可修改资产匹配规则:匹配关键词包含darwin对应macOS版本,包含windows对应Windows版本,包含arm对应arm架构版本
  • 下载得到的文件为tar.gz压缩格式,如需自动解压可额外添加tar文件解压逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 00:36:05