zoukankan      html  css  js  c++  java
  • python发布exe及调用

     python处理

    python接口

    主要使用flask库,通过URL接口进行交互,python接口为python_interface.py

    # -*- coding: utf-8 -*-
    # cython:language_level=3
    from flask import Flask
    
    #创建flask对象
    app = Flask(__name__)
     
    #创建路由'/'
    @app.route('/a')
    def home_a():
      return "Hello,I'm a!"
    #当用户请求'/a'资源时,回传"Hello,I'm a!"
    
    #创建路由'/'
    @app.route('/b')
    def home_b():
      return "Hello,I'm b!"
    #当用户请求'/b'资源时,回传"Hello,I'm b!"
    
    #启动flask,并设定端口为5000
    def main():
        app.run(host='127.0.0.1', port=5000)
    python_interface.py

    python主函数

    # -*- coding: utf-8 -*-
    from flask import Flask
    import python_interface
    
    if __name__ == '__main__':
        python_interface.main()
    py_inter.py

    代码运行后提示进入网站查看,查看接口/a结果如下:

    python生成exe

    生成exe,使用pyinstaller库,由于很容易被反编译获取源码,生成exe之前对.py文件进行编译处理

    二进制编译使用cython库

    编译文件为setup.py

    from distutils.core import setup
    from Cython.Build import cythonize
    
    setup(ext_modules = cythonize("python_interface.py"))
    setup.py

    编译pyd

    python终端或cmd命令下使用 python setup.py build_ext --inplace 语句进行pyd编译,示意图如下

    当界面出现已完成代码的生成,表示编译完成,下图所示

     此时文件夹中会多出2个文件和build文件夹(不用管)下图所示

     生成exe

    python终端或cmd命令下使用 pyinstaller -F  python_interface.py 语句进行打包,

     出现下图提示,表明生成成功

     红色方框内为生成的exe文件,双击此文件出现与python代码一致的信息,表示生成的exe是可用的,本例的提示下图所示

    同样的打开上图的网址,验证端口b,

    踩坑记录:

    1、主函数中应包含调用文件的所有包,否则生成的exe会提示找不到包。

  • 相关阅读:
    pip安装超时
    MySQL+Android+JSP(php)的微博程序设计
    json的jar包
    eclipse远程连接不上数据库
    Dialog的Activity形式
    javaBean?
    Android生命周期详解
    四种启动模式
    softMax怎么更加方便地理解
    sqldevelpoer第一次使用出现错误的处理
  • 原文地址:https://www.cnblogs.com/adawen/p/14694633.html
Copyright © 2011-2022 走看看