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中字典(Dictionary)用法实例详解
May 30 Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 Python
python 实时得到cpu和内存的使用情况方法
Jun 11 Python
Python实现string字符串连接的方法总结【8种方式】
Jul 06 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 Python
分享PyCharm的几个使用技巧
Nov 10 Python
python实现图片上添加图片
Nov 26 Python
python-xpath获取html文档的部分内容
Mar 06 Python
解决Python paramiko 模块远程执行ssh 命令 nohup 不生效的问题
Jul 14 Python
pycharm 代码自动补全的实现方法(图文)
Sep 18 Python
记录一下scrapy中settings的一些配置小结
Sep 28 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
Jan 27 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
第十五节--Zend引擎的发展
2006/11/16 PHP
浅谈mysql_query()函数的返回值问题
2016/09/05 PHP
绑定回车enter事件代码
2014/05/18 Javascript
常用的JS验证和函数汇总
2014/12/23 Javascript
对JavaScript中this指针的新理解分享
2015/01/31 Javascript
Angular路由简单学习
2016/12/26 Javascript
jQuery使用EasyUi实现三级联动下拉框效果
2017/03/08 Javascript
微信小程序 setData使用方法及常用错误解决办法
2017/05/11 Javascript
浅谈vue中数据双向绑定的实现原理
2017/09/14 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
Vue+axios封装请求实现前后端分离
2020/10/23 Javascript
[06:20]2015国际邀请赛第三日top10
2015/08/08 DOTA
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
对PyQt5的输入对话框使用(QInputDialog)详解
2019/06/25 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
python基于K-means聚类算法的图像分割
2019/10/30 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
python中数据库like模糊查询方式
2020/03/02 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
python实现mean-shift聚类算法
2020/06/10 Python
css3实现顶部社会化分享按钮示例
2014/05/06 HTML / CSS
利用css3径向渐变做一张优惠券的示例
2018/03/22 HTML / CSS
编写一个类体现构造,公有,私有方法,静态,私有变量
2013/08/10 面试题
医院门卫岗位职责
2013/12/30 职场文书
主题酒店策划书
2014/01/28 职场文书
九年级科学教学反思
2014/01/29 职场文书
就业协议书怎么填
2014/04/11 职场文书
法院先进个人事迹材料
2014/05/04 职场文书
出资证明书范本(标准版)
2014/09/24 职场文书
正风肃纪剖析材料
2014/09/30 职场文书
2014年初一班主任工作总结
2014/11/08 职场文书
利用python做表格数据处理
2021/04/13 Python
Pytorch GPU内存占用很高,但是利用率很低如何解决
2021/06/01 Python
Python3.8官网文档之类的基础语法阅读
2021/09/04 Python
python神经网络学习 使用Keras进行回归运算
2022/05/04 Python