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

如何在Heroku或AWS上部署生成JSON的Python脚本并搭建JSON端点?

嘿,刚接触Heroku和AWS这类云平台的时候确实容易摸不着方向,我当初也是踩了不少坑才搞明白怎么把本地脚本变成可访问的JSON服务。下面给你两个新手友好的方案,一步步来就能搞定~

核心前提:先把脚本包装成Web服务

你现在的Python脚本是本地运行生成JSON,但要让外部通过URL获取数据,得给它加个Web"入口"——用轻量框架把脚本改成HTTP接口就行,我推荐用Flask(最适合新手)。

举个例子,把你的JSON生成逻辑套进这个模板里:

from flask import Flask, jsonify

app = Flask(__name__)

# 替换成你自己的JSON生成代码
def generate_my_json():
    return {
        "status": "success",
        "data": {"key1": "value1", "key2": ["item1", "item2"]}
    }

# 定义一个接口路径,访问这个路径就返回JSON
@app.route('/get-data')
def return_json():
    return jsonify(generate_my_json())

if __name__ == '__main__':
    # 适配云平台的端口设置
    import os
    port = int(os.environ.get('PORT', 5000))
    app.run(host='0.0.0.0', port=port)

方案一:部署到Heroku(快速上手,零服务器维护)

步骤1:准备Heroku必需的文件

  • requirements.txt:告诉Heroku需要安装哪些依赖,比如用Flask的话就写:
    Flask==2.3.3
    
    (如果你的脚本还有其他依赖,比如pandas,直接加在下面就行)
  • Procfile:告诉Heroku怎么启动你的服务,内容就一行:
    web: python 你的脚本文件名.py
    
    (把你的脚本文件名.py换成你实际的文件名,比如app.py)

步骤2:部署到Heroku

  1. 先安装Heroku CLI,打开终端输入heroku login登录你的Heroku账号(没有的话先注册一个)
  2. 进入脚本所在的文件夹,初始化Git仓库:
    git init
    git add .
    git commit -m "Initial deploy"
    
  3. 创建Heroku应用:
    heroku create 你的应用名字
    
    (名字随便取,只要没被别人用就行)
  4. 推送代码到Heroku:
    git push heroku main
    
  5. 打开应用:heroku open,然后在URL后面加上/get-data(就是你刚才定义的接口路径),就能看到你的JSON数据了!

方案二:部署到AWS(用Lambda+API Gateway,无服务器更省钱)

如果不想用Heroku,AWS的无服务器方案也很适合轻量脚本,不用管服务器维护。

步骤1:把脚本改成Lambda函数格式

Lambda函数有固定的入口格式,把你的JSON生成逻辑套进去:

import json

def generate_my_json():
    # 替换成你自己的JSON生成代码
    return {
        "status": "success",
        "data": {"key1": "value1", "key2": ["item1", "item2"]}
    }

# Lambda的入口函数,固定格式
def lambda_handler(event, context):
    return {
        'statusCode': 200,
        'headers': {
            'Content-Type': 'application/json',
            'Access-Control-Allow-Origin': '*'  # 允许跨域访问
        },
        'body': json.dumps(generate_my_json())
    }

步骤2:创建Lambda函数

  1. 登录AWS控制台,找到「Lambda」服务,点击「创建函数」
  2. 选择「从头开始创建」,输入函数名,运行时选对应版本的Python,点击「创建函数」
  3. 在代码编辑器里替换默认代码为上面的Lambda代码,点击「部署」

步骤3:配置API Gateway(让外部能访问Lambda)

  1. 在Lambda函数页面,点击「添加触发器」,选择「API Gateway」
  2. 选择「创建新API」,类型选「HTTP API」,安全选「打开」(测试用,后续可以改成带认证的),点击「添加」
  3. 触发器创建后,会生成一个API端点URL,直接访问这个URL就能拿到你的JSON数据了!

小提醒

  • 先在本地把Web服务跑通,确认能正常返回JSON再部署,这样排查问题更简单
  • 如果你的脚本有非标准库的依赖,Heroku直接加进requirements.txt就行;AWS Lambda的话,需要把依赖打包成「层」或者用Docker镜像(新手先从无额外依赖的场景开始试)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:45:32