一个简单的python例子(监控网页是否运行)

这篇文章并不是一个教程,仅仅是为告诉初学者用python做一件有实际意义的事情很简单,一个只要稍微懂一点电脑知识的人都应该能看懂。

这个程序思想很简单,就是监控一个网站是否在运行,如果停止了就启动它。

顺便说一句,为了更易于理解,以下的操作建议都在windows系统上运行即可。

1、安装python
python安装包有很多,推荐使用 Anaconda,只要下载安装包即可,按一般程序运行即可。
最新的版本,安装完成后,建议顺便安装VSCode作为编辑器。
参考文章:
python神器——Anaconda的安装与优化配置
安装后,就有 一个Anaconda Prompt 程序,用来启动python 运行环境。

在这里插入图片描述
2、安装Django
Django 是Python的Web框架,比较好用,我们就用它来搭建网站,并说明网站的启动和运行。
安装第1步的环境后,安装Django就很简单。
打开Anaconda Prompt,运行pip install django 就可以了,
安装完成后,运行命令 django-admin startproject root, 就会在当前路径下建立目录 root
此时在root 目录下运行 python manage.py runserver , 一个网站就搭建好了。
上述几个步骤和结果可见下图。
在这里插入图片描述
在这里插入图片描述
这里插入图片描述
在这里插入图片描述
需要详细钻研,可以参考这篇文章(网上一大把)
Python Django的安装配置

3、监控网站运行并在不运行时启动它
这个过程也很简单,就是二件事:
(1)检测网站是否在运行
用 requests.get(url,timeout=1) 函数,如果在运行,就会返回200代码,出错则表明网站不在运行。
(2)不在运行时启动运行网站,也是一个语句
os.system(‘python manage.py runserver’)

能够如此简单实现,是因为python集成了大量的库,所以就可以直接调用其功能。
这里就是用了 requests 和 os 两个库。

后面的事情,可以用一个死循环让这个程序一直运行,
另外一种简单办法是在windows任务中加入计划,每小时运行一次 python testurl.py

补充说明一点,就是这个环境和代码最好与网站部署在一起,这样,就保证不会因为网络等问题引起误判,同时也是可以在本地启动网站。

代码如下(testurl.py):

#!/usr/bin/env python
# coding=utf-8
import requests
import os
import numpy as np 
# 检测网站是否运行,是返回1,否则返回0
def testUrl(url):
    try:
        r = requests.get(url,timeout=1)
        print(r.status_code)
        return 1
    except:
        return 0
        
url = 'http://127.0.0.1:8000'
if(testUrl(url)==1):
    exit()
else:
    os.system('python manage.py runserver')

exit()


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章