一個簡單的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()


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