Linux服务器定时运行python项目

Linux服务器定时运行python项目

一.安装python环境

打开https://www.python.org/downloads/ 选择downloads>>All releases
选择源码安装(Gzipped source tarball),下载源码通过xshell 或者MobaXterm上传到[linux]服务器

二.解压和安装python软件包(能够使用 tar 解压则跳过)

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
sudo yum install unixODBC-devel
yum install -y gcc-c++
yum install libffi-devel -y 

三.解压源码包

1.首先选择一个自己的文件夹上传刚刚上传的python软件包,比如/usr/loca/src目录下
执行解压命令

	tar -xzvf Python-3.10.6.tgz 

2.进入刚解压的文件Python-3.10.6中

cd /usr/local/src/Python-3.10.6

3.执行配置检测命令

./configure

4.配置检测完成之后,编译安装,执行命令:

make && make install

四.添加python环境变量

(1)查看环境变量PATH

echo $PATH

(2)用 vim 编辑器编辑环境变量配置文件
打开配置文件:

vim ~/.bash_profile

输入 i 进入编辑模式,添加如下配置:

# 配置python环境变量
export PYTHON_HOME=/root/training/Python-3.6.5
export PATH=$PYTHON_HOME/bin:$PATH

添加完成后,Esc,在输入冒号 : ,然后输入wq,enter保存并退出vim编辑器
执行命令使配置生效 :

source ~/.bash_profile

(3)执行echo命令,查看是否配置成功:

echo $PYTHON_HOME

至此 python 环境变量配置成功

五.接着进入python项目中,打开terminal终端执行命令:

pip freeze > requirements.txt

示例如下:

在这里插入图片描述
将python项目文件打包成zip包上传至linux服务器
在这里插入图片描述
上传至linux服务器后文件夹(/usr/local/src/py/ 创建该文件夹),然后再执行命令

unzip daily_morning-master.zip

解压成功后,执行命令

python3 main.py

如果提示缺失模块,示例
在这里插入图片描述
则 进入daily_morning-master 文件夹后 执行

pip install -r requirements.txt

直至python项目文件已经能在linux服务器上运行

六.使用Linux 中的Crontab定时执行python文件

1、安装crontab


yum install crontabs

2、检查是否安装好:

rpm -qa | grep crontab

3、安装完成后,进入到服务器/etc目录:

 cd /etc

4、如下给出crontab一些基本操作:

service crond start     //启动服务
service crond stop      //关闭服务
service crond restart   //重启服务
service crond reload    //重新载入配置
service crond status    //查看crontab服务状态
chkconfig --level 345 crond on   //设置开机启动

6、为这个要执行的脚本赋予权限 (这一步很重要,否则定时执行调用可能不会成功)
daily_morning-master

chmod +x /user/local/src/py/daily_morning-master/main.py  #添加执行权限
chmod 777 /user/local/src/py/daily_morning-master/main.py  #添加最大权限

7、添加和执行crontab定时任务:

  (1)进入到/etc目录 cd /etc
   (2)配置定时任务 输入crontab -e  打开开编辑界面后,设置如下定时任务
*/1 * * * * python /user/local/src/py/daily_morning-master/main.py >>/user/local/src/py/daily_morning-master/main.log 2>&1 &  #每分钟执行一次

或者

0 10 * * * python /user/local/src/py/daily_morning-master/main.py >>/user/local/src/py/daily_morning-master/main.log 2>&1 &  #每天上午10点执行一次

(3)设置完成后,按下esc键盘,输入:wq进行保存!

(4)查看定时任务 crontab -l (PS. 删除定时任务为 crontab -r 慎重执行!!!)

(5)开始启动定时任务

/bin/systemctl start crond.service

6)第(5)步运行后,crontab则在后台,自己默默的每一分钟运行一次test.py了!!!

(7)其他运行中需要关注的操作:

               tail /var/log/cron  //查看crontab日志       

               tail //user/local/src/py/daily_morning-master/main.log 或者 more /user/local/src/py/daily_morning-master/main.log //查看你的python运行日志

               /bin/systemctl stop crond.service  //停止当前定时任务

8、其他操作之查看python运行进程: ps -ef | grep python

9、其他操作之杀死所有python进行:ps aux|grep python|grep -v grep|cut -c 9-15|xargs kill -15

至此,python文件已经启动,如下所示,我设置的是每天10点定时为女朋友推送微信公众号消息!

在这里插入图片描述

  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闪耀太阳a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值