python脚本当作Linux中的服务启动实现方法

 更新时间:2019年06月28日 15:17:30   作者:别过来胖到我了  
今天小编就为大家分享一篇python脚本当作Linux中的服务启动实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

脚本服务化目的:

python 在 文本处理中有着广泛的应用,为了满足文本数据的获取,会每天运行一些爬虫抓取数据。但是网上买的服务器会不定时进行维护,服务器会被重启。这样我们的爬虫服务就无法运行。这个时候我们可以把python脚本服务化,服务器重启后,脚本就会自动运行。解决服务器维护后需要手动运行python脚本。

实现方法:

1,给编写好的python脚本开头加上

#!/usr/bin/python

2,启动shell 脚本 编写

vi pystock.sh

#vim /etc/init.d/httpd
#!bin/bash
lock="py_stock.py"
#启动服务方法
start(){
    echo "service start...."
    su root -c "python /root/python/py_stock/src/crawler/py_stock.py &"
}
<pre name="code" class="plain">#停止服务方法
stop(){ echo "service stop...." pkill -f $lock}
#查看服务状态
status(){
    if [ -e $lock ];then
      echo "$0 service start"
    else
      echo "$0 service stop"
    fi
}
#重新启动
restart(){
    stop
    start
}
case "$1" in
"start")
    start
    ;;
"stop")
    stop
    ;;
"status")
    status
    ;;
"restart")
    restart
    ;;
*)
    echo "$0 start|stop|status|restart"
    ;;
esac

3,复制脚本到/etc/init.d/目录下:cp pystock.sh /etc/init.d/

4,给shell脚本赋予执行权限 :chmod +x /etc/init.d/pystock.sh

5,添加服务:chkconfig --add pystock.sh

6,设置服务为开机启动:chkconfig --level 35 pystock.sh on

出现的问题:

当我运行shell 脚本启动python脚本时,提示我一下错误

syntax error near unexpected token `$'{\r''

这是因为window 下换行是\r\n,linux 下换行是\n。我在window下编写的shell 脚本拷贝到linux上。shell命令解读时会先解读/r,在解读后面的脚本导致报错。而且这个\r 在Linux上是看不到的。这理要注意了

解决方法:

sed 's/\r//' 原文件 >转换后文件

以上这篇python脚本当作Linux中的服务启动实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python绘制云雨图raincloud plot

    python绘制云雨图raincloud plot

    这篇文章主要介绍了python绘制云雨图raincloud plot,Raincloud的Python实现是一个名为PtitPrince的包,它写在seaborn之上,这是一个Python绘图库,用于从pandas数据帧中获取漂亮的绘图
    2022-08-08
  • 利用python批量给云主机配置安全组的方法教程

    利用python批量给云主机配置安全组的方法教程

    这篇文章主要给大家介绍了利用python批量给云主机配置安全组的方法教程,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
    2017-06-06
  • Python学习之12个常用基础语法详解

    Python学习之12个常用基础语法详解

    这篇文章主要为大家介绍了12个Python小案例,包含了日常开发中非常实用的语法,快来跟随小编一起学习一下,看看自己都会多少个呢
    2022-02-02
  • Python应用开发之实现串口通信

    Python应用开发之实现串口通信

    在嵌入式开发中我们经常会用到串口,串口通信简单,使用起来方便,且适用场景多。本文为大家准备了Python实现串口通信的示例代码,需要的可以参考一下
    2022-11-11
  • TensorFlow 读取CSV数据的实例

    TensorFlow 读取CSV数据的实例

    今天小编就为大家分享一篇TensorFlow 读取CSV数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python实现新版正方系统滑动验证码识别

    Python实现新版正方系统滑动验证码识别

    这篇文章主要介绍了基于Python实现新版正方系统滑动验证码识别算法和方案,文中示例代码对我们的学习和工作有一定的帮助,感兴趣的可以了解一下
    2021-12-12
  • 关于Python字典(Dictionary)操作详解

    关于Python字典(Dictionary)操作详解

    这篇文章主要介绍了关于Python字典(Dictionary)操作详解,Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型,需要的朋友可以参考下
    2023-04-04
  • Python实现的各种常见分布算法示例

    Python实现的各种常见分布算法示例

    这篇文章主要介绍了Python实现的各种常见分布算法,结合实例形式总结分析了Python常见的各种分布算法相关实现技巧,包括二项分布、离散分布、泊松分布、正态分布、指数分布等算法实现方法,需要的朋友可以参考下
    2018-12-12
  • Python利用lxml模块爬取豆瓣读书排行榜的方法与分析

    Python利用lxml模块爬取豆瓣读书排行榜的方法与分析

    这篇文章主要给大家介绍了关于Python爬虫利用lxml模块爬取豆瓣读书排行榜的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • 用python构建IP代理池详解

    用python构建IP代理池详解

    大家好,本篇文章主要讲的是用python构建IP代理池详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01

最新评论