pythonの勉強がてら簡単な死活監視プログラムを書いてみました
これは、RequestsというライブラリをつかってWebページのステータスコードでページが見れるかどうかのプログラムです
- Requestsとは
- pythonでインターネットにアクセスするための外部ライブラリ
- getメソッドをつかうことでアクセスしているWebサーバからデータを取得できる
- Webサーバから返されたレスポンスメッセージを戻り値として返す
starus_code | ステータスコード |
headrs | ヘッダーの情報 |
encoding | 文字コードのエンコード方式 |
text | 本文のHTMLコード |
- 事前準備
コードを書く前にpipコマンドをつかって「Requests」というライブラリをインストールします
windows↓
pip install requests
Mac ↓
pip3 install requests
- コード
# coding: utf-8 import requests import time def webstatus(url): i=url try: rq = requests.get(i) if rq.status_code == 200: return('OK') else: return('NO Web page.') except: print('//エラー//') return('NO Web page') if __name__ == '__main__': inp=input('URL=>') while(True): sta=webstatus(inp) print(sta) time.sleep(5)
- 各種説明
rq = requests.get(i)
URLを引数にgetメソッドを実行してrqに格納
if rq.status_code == 200: return('OK') else: return('NO Web page.')
rqのステータスコードが200だと「OK」と出力それ以外だと「NO Web page」
このまま実行するとWebが見れなくなった状態でエラーはいてプログラムがとまってしまうため例外処理をつけて見た↓
try: rq = requests.get(i) if rq.status_code == 200: return('OK') else: return('NO Web page.') except: print('//エラー//') return('NO Web page')
なんかいらない部分があるような、、、まぁいっか( ^ω^ )
それにしてもきたない( ;∀;)
最初は例外処理なしでやっていたけどうまくいかず、あわてて調べた例外処理を付け加えているため、使い方があってるのか、、、w