zoukankan      html  css  js  c++  java
  • pyinstaller打包web项目

    pyinstaller打包python非web项目网上资料特别多,但就对于web项目少之又少。
    今天在打包Python的tornado项目时,出现无法找到静态文件和html,但是在非打包时却运行正常,浏览器能够正常访问,打包之后就出现这个问题。
    查找相关资料之后发现,-F 这个参数和templates static这两个的文件的路径问题。

    -F
    这个不建议在web项目打包时使用,因为这个参数虽然使整个项目只有入口文件,
    但是当整个项目运行之后,它会生成一个临时文件,并且这个临时文件夹是随机命名的,放在 /tmp/随机文件夹/ 里面
    有兴趣可以使用tornado试试,获取当前路径并打印即可。
    

    下面是解决方案,用一个获取当前文件夹路径的方法,获取templates static的路径即可,使得项目路径可以随时随地的变化,不受其他因素影响。

    def src_path():
    	if hasattr(sys, '_MEIPASS'):
    	    base_dir = sys._MEIPASS
    	else:
    		base_dir = os.path.abspath('.')
    	return base_dir
    剩下的在tornado或者其他Python web项目的静态路径调用该方法就行。
    

    templates static需要放到打包之后的dist下面,或者根据自己项目的位置放进去
    希望能交流更多技术,关注小白的微信公众号吧。
    在这里插入图片描述

    小白技术社
  • 相关阅读:
    Vim插件:Unite新手指导(译)
    Java并发编程实战3章
    Centos6.*下安装gcc-4.8.2
    iostat详解
    国内速度比较快的NTP Server
    ssh免密登录配置
    解决卸载移动硬盘问题:umount:/usb1/:device is busy
    Centos查看系统安装日期
    主机IP规划__rsync__inotify
    熟悉OSI七层模型
  • 原文地址:https://www.cnblogs.com/xbjss/p/13326685.html
Copyright © 2011-2022 走看看