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

如何部署需使用环境变量的Python脚本

部署带环境变量的Python API脚本指南

绝对不能把包含client_id和secret的.env文件上传到GitHub,这会导致敏感信息泄露,严重违反API安全规范。以下是几种安全的部署和分发方案:

1. 提供示例.env文件

  • 在仓库中上传一个.env.example文件,仅保留变量名,用占位符提示用户填充真实值:
    CLIENT_ID=请填入你的client_id
    SECRET=请填入你的secret
    
  • 在README中明确说明:用户需要复制该示例文件并重命名为.env,然后替换占位符为自己的真实密钥。

2. 支持命令行参数传入

  • 修改脚本,用argparse模块接收命令行参数:
    import argparse
    
    parser = argparse.ArgumentParser(description='API聚合工具')
    parser.add_argument('--client-id', required=True, help='API访问所需的client_id')
    parser.add_argument('--secret', required=True, help='API访问所需的secret')
    args = parser.parse_args()
    
    # 后续业务逻辑直接使用args.client_id和args.secret
    
  • 用户使用时直接在终端输入:
    python your_script.py --client-id 你的真实ID --secret 你的真实密钥
    

3. 读取系统环境变量

  • 让用户在运行脚本前,先在终端或系统中配置环境变量:
    • Linux/macOS终端:
      export CLIENT_ID="你的真实ID"
      export SECRET="你的真实密钥"
      python your_script.py
      
    • Windows CMD:
      set CLIENT_ID=你的真实ID
      set SECRET=你的真实密钥
      python your_script.py
      
    • Windows PowerShell:
      $env:CLIENT_ID="你的真实ID"
      $env:SECRET="你的真实密钥"
      python your_script.py
      
  • 脚本中通过os.environ读取变量:
    import os
    
    client_id = os.environ.get('CLIENT_ID')
    secret = os.environ.get('SECRET')
    
    if not client_id or not secret:
        raise ValueError("请先设置CLIENT_ID和SECRET环境变量")
    

4. 打包为可执行文件(面向非技术用户)

如果要降低用户使用门槛,可用pyinstaller将脚本打包成单文件可执行程序,同时在脚本中加入密钥输入提示:

pyinstaller --onefile your_script.py

最后务必在.gitignore中添加.env条目,防止敏感文件被意外提交到仓库。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 23:45:34