Django2.0打包生成exe,在win10或7环境开机自启动

前言

该文章是本人在实际项目中遇到的各种问题,供大家参考。

  1. 包含了如何将django项目打包生成exe可执行文件。
  2. 如何将该exe不在命令行使用如: manage.exe runserver,而是用bat代替
  3. 最后想开机自动启动bat文件,用.vbs文件放入电脑开机自启动环境。
  4. 该文章是本人第一次在csdn上写,若有错误,请大家留言我会一一回复,感谢.
  5. 因为是公司项目文件所以不上传到github,抱歉
  6. 本人参考文献
  7. django打包exe
  8. exe文件开机自启动

配置环境

首先需要使用python安装pyinstaller
这里推荐先新建一个虚拟环境,这样生成的exe文件可以尽可能的小一些

pip install pyinstaller
pip install django==2.0.0

然后再安装你项目需要用到py库。最后本人实在python的虚拟环境中创建exe(库不多)所以文件可以显得较为小

先生成.spec文件

在django的路径也就是含有manage.py文件的路径下

pyi-makespec -D manage.py

运行后会生成一个manage.spec文件

通常情况下,直接打包(你无法提前预知缺少的module)

直接执行以下语句

pyinstaller manage.spec

之后django项目文件夹下会多出disk文件夹和build文件夹,重要的exe信息在dist中

运行exe

运行首先要到dist中间中依次进入最后默认文件名manage.exe文件,双击无作用出现一系列提示,因为双击相当于运行python manage.py 但我们运行django需要python manage.py runserver 所以按住键盘shift在文件空白处按鼠标右键会出现在此处打开命令窗口.执行程序

manage,exe runerver

将会报错,ImportError: No module named admin。一般都是缺少module,之后可参考我上面前言中参考的文档进行修改
在.spec文件加需要的module。

前言中的链接大致和其他博客类似,但有一篇博客用django1.11,具体有点遗忘,如创建ini文件等,本人尝试失败,告知下大家。前言发布链接为正解。

将exe文件写入bat

在exe文件夹下创建一个bat文件,如:manage.bat
写入内容

@echo off
cd C:\Users\win7_anywhere32\Desktop\111\manage
manage.exe runserver

@ echo off 双击运行.bat文件不显示manage.exe runserver这条命令
进入路径 在虚拟机中测试,所以文件名有点随意
运行指令 manage.exe runserver

注意: 该文件写成绝对路径形式, 本人一开始没加路径cd C:\Users\win7_anywhere32\Desktop\111\manage\相当于在一开始的路径中(按下win+r 输入cmd 一开始显示的路径)运行。若需写相对路径请大家自己寻找参考资料,本人目前找了很多,没有成功过。找到望联系本人,留言即可.

写.vbs文件

首先创建一个文件如 start.vbs文件
输入

CreateObject(“WScript.Shell”).Run"C:\Users\win7_anywhere32\Desktop\111\manage\manage.bat",0

注意大小写,不能错。 最后的0代表开机不会显示cmd窗口,若在测试阶段可改为1查看具体问题

放入win启动文件中

按下win+r , 输入

shell:startup

进入C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup文件夹下
将start.vbs文件放入。电脑重启查看。完成。

发布了1 篇原创文章 · 获赞 2 · 访问量 65

おすすめ

転載: blog.csdn.net/TodChen_Blogger/article/details/105366778