服务的优势就在于可以开机自启动
而在windows上,python不能直接将脚本注册为服务,需要将其先打包成exe,再将exe注册为服务
打包exe
使用pyinstaller打包,安装好pyinstaller包后,在cmd/pycharm的终端里运行如下代码打包:
pyinstaller -F CRR.py --noconsole
-F 表示不带依赖exe,大工程可能会启动较慢;改成 -D则表示带依赖;小工程直接-F即可
CRR.py是我的脚本文件名称,这里换成自己的
–noconsole 表示不带黑框
网上教程一大把,不做赘述
注册服务
下载nssm工具
下载地址:https://share.weiyun.com/Q9LkP9P6
注册服务
-
来到nssm所在目录,在文件路径处输入cmd,可打开命令窗口
-
在命令窗口输入 nssm install CRR后,会弹出nssm的软件界面
这里的CRR,是我注册后的服务的名称,这里随意,但不可出现中文,最好不要有空格、特殊符号
-
点击 Application Path右边的省略号按钮,选中前边生成的exe
-
在details下,输入服务名和对服务的描述,点击 Install service
注册完成
- 如果状态这里并不是启动状态,可以右键启动
- 如果注册之前就开着服务窗口,注册后可能看不到,右键刷新一下即可
- 启动类型为自动,即可开机自启动