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


Posted in Python onJune 28, 2019

脚本服务化目的:

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 相关文章推荐
Python实现把回车符\r\n转换成\n
Apr 23 Python
python检查字符串是否是正确ISBN的方法
Jul 11 Python
通过源码分析Python中的切片赋值
May 08 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
Apr 25 Python
Python针对给定列表中元素进行翻转操作的方法分析
Apr 27 Python
对Python捕获控制台输出流的方法详解
Jan 07 Python
python 实现读取一个excel多个sheet表并合并的方法
Feb 12 Python
Pandas之groupby( )用法笔记小结
Jul 23 Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 Python
Python依赖包整体迁移方法详解
Aug 15 Python
Python爬取知乎图片代码实现解析
Sep 17 Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 Python
如何用Python制作微信好友个性签名词云图
Jun 28 #Python
python打包exe开机自动启动的实例(windows)
Jun 28 #Python
python脚本开机自启的实现方法
Jun 28 #Python
Python如何爬取微信公众号文章和评论(基于 Fiddler 抓包分析)
Jun 28 #Python
python把转列表为集合的方法
Jun 28 #Python
Python matplotlib学习笔记之坐标轴范围
Jun 28 #Python
Python程序打包工具py2exe和PyInstaller详解
Jun 28 #Python
You might like
PHP常用代码
2006/11/23 PHP
初识Laravel
2014/10/30 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
PHP7扩展开发教程之Hello World实现方法示例
2017/08/03 PHP
jquery validate使用攻略 第四步
2010/07/01 Javascript
Jquery+asp.net后台数据传到前台js进行解析的方法
2014/05/11 Javascript
jQuery插件Zclip实现完美兼容个浏览器点击复制内容到剪贴板
2015/04/30 Javascript
jQuery下拉美化搜索表单效果代码分享
2015/08/25 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
JavaScript数组_动力节点Java学院整理
2017/06/26 Javascript
理解Koa2中的async&amp;await的用法
2018/02/05 Javascript
微信小程序实现折叠展开效果
2018/07/19 Javascript
在create-react-app中使用sass的方法示例
2018/10/01 Javascript
JavaScript栈和队列相关操作与实现方法详解
2018/12/07 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
Python程序设计入门(4)模块和包
2014/06/16 Python
Python学习之asyncore模块用法实例教程
2014/09/29 Python
初步剖析C语言编程中的结构体
2016/01/16 Python
Python实现选择排序
2017/06/04 Python
详解Python 切片语法
2019/06/10 Python
Python Django基础二之URL路由系统
2019/07/18 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
html+css实现自定义图片上传按钮功能
2019/09/04 HTML / CSS
美国顶级防滑鞋:Shoes For Crews
2017/03/27 全球购物
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
SIMON MILLER官网:洛杉矶的生活方式品牌
2020/10/19 全球购物
全国税务系统先进集体事迹材料
2014/05/19 职场文书
法人代表证明书
2014/09/18 职场文书
师德自我剖析材料范文
2014/10/06 职场文书
党的群众路线教育实践活动批评与自我批评发言稿
2014/10/16 职场文书
复活读书笔记
2015/06/29 职场文书
心理学培训心得体会
2016/01/22 职场文书
基于Go语言构建RESTful API服务
2021/07/25 Golang
详解Vue slot插槽
2021/11/20 Vue.js