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文件去除注释的方法
May 25 Python
使用Python导出Excel图表以及导出为图片的方法
Nov 07 Python
Python 基础教程之str和repr的详解
Aug 20 Python
Python开发中爬虫使用代理proxy抓取网页的方法示例
Sep 26 Python
python实现闹钟定时播放音乐功能
Jan 25 Python
Python Requests库基本用法示例
Aug 20 Python
Python学习笔记之列表推导式实例分析
Aug 13 Python
python tkinter组件使用详解
Sep 16 Python
python flask中动态URL规则详解
Nov 22 Python
Python collections模块的使用方法
Oct 09 Python
python爬虫判断招聘信息是否存在的实例代码
Nov 20 Python
Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作
May 25 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中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
php自动给网址加上链接的方法
2015/06/02 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
JavaScript 学习笔记 Black.Caffeine 09.11.28
2009/11/30 Javascript
JS预览图像将本地图片显示到浏览器上
2013/08/25 Javascript
JS实现图片横向滚动效果示例代码
2013/09/04 Javascript
jQuery trigger()方法用法介绍
2015/01/13 Javascript
js实现短信发送倒计时功能(正则验证)
2017/02/10 Javascript
Vue 组件间的样式冲突污染
2017/08/31 Javascript
Angular弹出模态框的两种方式
2017/10/19 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
微信小程序基于本地缓存实现点赞功能的方法
2017/12/18 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
微信小程序下拉框搜索功能的实现方法
2019/07/31 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
element跨分页操作选择详解
2020/06/29 Javascript
微信小程序实现身份证取景框拍摄
2020/09/09 Javascript
[04:52]2015国际邀请赛LGD战队晋级之路
2015/08/14 DOTA
浅谈python和C语言混编的几种方式(推荐)
2017/09/27 Python
pip安装时ReadTimeoutError的解决方法
2018/06/12 Python
通过python顺序修改文件名字的方法
2018/07/11 Python
python+mysql实现学生信息查询系统
2019/02/21 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
2020/01/21 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
全面解析CSS Media媒体查询使用操作(推荐)
2017/08/15 HTML / CSS
美国知名奢侈美容品牌零售商:Cos Bar
2017/04/21 全球购物
Shell如何接收变量输入
2016/08/06 面试题
优秀的2014年两会精神解读
2014/03/17 职场文书
社会实践先进工作者事迹材料
2014/05/06 职场文书
个人考核材料
2014/05/15 职场文书
个人维稳承诺书
2015/05/04 职场文书
2016年过年放假安排通知
2015/08/18 职场文书
范文之农村基层党建工作报告
2019/10/24 职场文书
http通过StreamingHttpResponse完成连续的数据传输长链接方式
2022/02/12 Python