结束python服务器进程_服务器端后台持续执行python程序小demo

冰先生:python小脚本,爬天气预报并定时发邮件提醒(适合小情侣的甜蜜打开方式)​zhuanlan.zhihu.com

上一篇写了做个可以发送邮件的小demo,这一篇呢我们来谈一谈如何让他更加方便的自动执行,刚开始的时候吧,我有3个想法,1.放在服务器让他在后台执行;2.写在Django里面,可以在后台设置;3.放在Windows上面定时任务,到了设定的时间就调用,最后啊,为了方便我还是把他放在了服务器上面后台执行,后续要是时间多的话可以把它集成在我的博客里,这样方便,想修改的时候不用动源码。

ok我们讲完了流程,接下来就是实践的环节了!

初步尝试:

刚开始直接把代码传到服务器,执行的时候出问题了,因为咱也不是很懂服务器,于是乎今天2020年9月23日上午在我乎上面发了一个问题, 感谢@洛克大佬儿的解答,才有了今天我写的这一篇文章,得尽快记录下来,省的忘了。python脚本在服务器执行报错?​www.zhihu.com

原来购买的某云服务器默认的情况不给开发邮件的25端口,你得去找,然后才能开通,这是某云解封25端口的链接:有需要的朋友可以去康康!https://cloud.tencent.com/document/product/213/40436​cloud.tencent.com

解封完了可以继续往下走了!

后台部署:

创建好这2个文件,bai.py里面存放我们写好的python代码,bai.out文件里面存放一些输出的日志记录

nohup python -u bai.py > bai.out 2>&1 &

# nohup+最后面的& 是让命令在后台执行

# >bai.out 是将信息输出到out日志中

# 2>&1 是将标准错误信息转变成标准输出,这样就可以将错误信息输出到bai.out 日志里面来。

命令执行完毕会返回一个id,看到这个id就说明这程序在后台执行了,如果看到的是:

就说明你登录的这个账号吧权限不够,先修改一下权限:

sudo chmod 777 youfile.py

再次执行即可!

为了验证是否在后台记录,我们退出了再次重新登陆一下看看

tail -f bai.out

这就大功告成!

若是想结束本程序呢,就先查看一下进程,然后直接杀掉对应的id号的程序就成

ps -ef | grep python

kill -9 youid


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部