美文网首页
python打包flask服务成exe文件,快速注册成windo

python打包flask服务成exe文件,快速注册成windo

作者: 承诺一时的华丽 | 来源:发表于2021-11-18 16:48 被阅读0次

    解决打包过大的问题

    用 Pyinstaller 打包 Python 程序 + 解决打包结果过大 >>

    由于相关业务问题,需要在windows环境中开启多个flask服务,为了方便管理各个flask服务,需要进行注册成windows服务,在windows服务中进行自动开启状态。下面将分享在实际过程中的方法,避免小伙伴们遇到同样的问题。

    步骤
    1.安装flask、pyinstaller
    2.下载nssm部署windows服务执行文件
    3.准备flask开发的案例代码
    4.使用pyinstaller将flask服务进行打包
    5.解压nssm文件,指定打包文件和服务名称
    6.测试最终结果是否正确

    0.准备工作

    python环境:3.6.8
    windows环境:windows10
    安装相关包如下,准备打包python代码

    1.安装flask框架

    pip install flask
    

    2.安装pyinstaller包

    pip install pyinstaller
    

    下载nssm.zip文件,准备在windows上安装exe文件

    下载地址

    http://www.nssm.cc/release/nssm-2.24.zip

    3.开始实际操作

    flask代码开发,以下是个demo

    from flask import Flask, request,jsonify
    app = Flask(__name__)
     
     
     
    # 查询模型训练状态
    @app.route('/modelstatus', methods=['GET', 'POST'])
    def train_status():
        if request.method == 'GET':
            return jsonify({'code': 200, 'status': 'false', 'msg': 'hello'})
        else:
            return jsonify({'code': 500, 'msg': '不支持该请求'})
     
    if __name__ == '__main__':
        app.run(host="0.0.0.0", port=9004)
    

    4、开始打包

    说明:(我在执行 pyinstaller -w admin.py时,打包过程中控制台正常没报错,打包完成以后进行dist文件,找到admin.exe双击启动时,提示创库显示执行失败。因为想程序占着控制台,所以执行的参数为 -w)

    最终执行flask服务打包

    pyinstaller -F -p D:\Work\pwork\ pc_main.py
    

    -p 将依赖包目录包含到打包范围

    5、开始进行注册windows服务

    1. 在cmd中进入nssm中的目录,然后进行命令
    2. nssm install aiweb(服务名)
    3. 选择Application path按钮将pyinstaller打包后的exe文件选择过来。
    4. 点击installer service按钮,则提示成功,此时去windows服务中查看服务即可。

    6.测试windows服务

    在服务中点击启动按钮,在浏览器中输入ip地址和端口号,此方法可以将flask服务、爬虫服务都可以注册成windows服务,开机自启动。

    原文链接:https://blog.csdn.net/mid_python/article/details/106239666

    相关文章

      网友评论

          本文标题:python打包flask服务成exe文件,快速注册成windo

          本文链接:https://www.haomeiwen.com/subject/qkodtrtx.html