• Python写API


    json

    JSON 是一种纯字符串形式的数据,它本身不提供任何方法(函数),非常适合在网络中进行传输。JavaScript、PHP、Java、Python、C++ 等编程语言中都内置了处理 JSON 数据的方法。

    JSON 是基于 JavaScript的一个子集,是一种开放的、轻量级的数据交换格式,采用独立于编程语言的文本格式来存储和表示数据,易于程序员阅读与编写,同时也易于计算机解析和生成,通常用于在 Web 客户端(浏览器)与 Web 服务器端之间传递数据。

    在 JSON 中,使用以下两种方式来表示数据:
    Object(对象):键/值对(名称/值)的集合,使用花括号{ }定义。在每个键/值对中,以键开头,后跟一个冒号:,最后是值。多个键/值对之间使用逗号,分隔,例如{“name”:“C语言中文网”,“url”:“http://c.biancheng.net”};
    Array(数组):值的有序集合,使用方括号[ ]定义,数组中每个值之间使用逗号,进行分隔。

    dataframe转json

    import pandas as pd
    data = [['Google',10],['Runoob',12],['Wiki',13]]
    data = pd.DataFrame(data,columns=['Site','Age'],dtype=float)
    df=pd.dataframe(data)
    df.to_json()
    
    • 1
    • 2
    • 3
    • 4
    • 5

    列表字典转json

    list转换成json:str_json = json.dumps(list, ensure_ascii=False, indent=2)
    json转换成list:list = json.loads(str_json)

    import json
    list=[]
     json.dumps(list, ensure_ascii=False, indent=2)
    
    • 1
    • 2
    • 3

    图片转json

     plt.plot()#绘图或读入图片
     plt.savefig('test.png')
    # 转base64
    figfile = BytesIO()
    plt.savefig(figfile, format='png')
    figfile.seek(0)
    figdata_png = base64.b64encode(figfile.getvalue())  # 将图片转为base64
    figdata_str = str(figdata_png, "utf-8")  # 提取base64的字符串,不然是b'xxx'
    # 用字典的形式保存数据
    raw_data = {}
    raw_data["image_base64_string"] = figdata_str
    json_data = dumps(raw_data, indent=2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    API

    ApiPost

    ApiPost下载页:https://www.apipost.cn/download.html
    在下图位置输入网址,具体网址参考代码:
    在这里插入图片描述
    在welcome中输入模型代码
    访问:

    from flask import Flask
    app = Flask(__name__)
    
    @app.route("/")
    def welcome():
        return "Hello World!"
    
    if __name__ == "__main__":
        app.run()
    
    app.run(host="localhost", port=5000, debug=True)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    这个API的访问网址是:http://127.0.0.1:5000/

    接收参数

    在ApiPost中写入请求参数:
    在这里插入图片描述
    在python中接收参数:
    获取方法:

    	request.form.get("key", type=str, default=None) # 获取表单数据
    	request.args.get("key") # 获取get请求参数
    	request.values.get("key") # 获取所有参数
    
    • 1
    • 2
    • 3

    实例:

    from flask import Flask,request
    
    app = Flask(__name__)
    
    @app.route('/model',methods = ['POST', 'GET'])
    def model():
        import json
        def json_request():
            # 接收处理json数据请求
            get_Data = request.args.get('industry')
            #get_Data = get_Data.decode('utf-8')
            return get_Data
    
        if __name__ == '__main__':
            industry_code = str(json_request())
            print(industry_code)
        a = "finish"
        return a
    
    app.run(host='0.0.0.0', port=8059, debug=True)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    具体可参考: https://blog.csdn.net/ling620/article/details/107562294

  • 相关阅读:
    Docker/Linux 安装Mysql
    Redis集群|集群搭建|集群Jedis开发
    sqlite数据库文件提示损坏修复方法
    REDIS12_缓存雪崩、缓存穿透、基于布隆过滤器解决缓存穿透的问题、缓存击穿、基于缓存击穿工作实际案例
    AIOPS 学习之路
    Java-枚举
    ELK入门(三)-Kibana
    Bootstrap5 安装使用
    《算法系列》之位运算
    代码随想录算法训练营第53天 | 1143、1035、53
  • 原文地址:https://blog.csdn.net/qq_47326711/article/details/126286581