スポンサーリンク
僕は結構、アドセンスやアフィリエイトで使用するキーワードを
自動収集するツールを PC 上で起動させたまま放置することが
多いのですが、最近なぜか家のインターネット接続が不安定になり、
接続が勝手に切れてしまって、ツールが延々とエラーを出力し続けてしまう
事象に悩まされていました。
経験豊富なエンジニアの方なら、あらかじめインターネット接続が
途切れてしまっていた時の動作をプログラムに組み込むのでしょうが、
僕にとっては初めての経験だったため、事象の解決のために
色々調べてみた結果を備忘録として残したいと思います。
以下は、
『インターネット接続を確認し、接続失敗した場合は 10 回まで
接続確認を繰り返し、10回失敗した場合にプログラムを終了する』
という動作をするコードです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# 必要なモジュールをインポート import requests import time import sys MAX_RETRY = 10 def internet_onoff(): for i in range(MAX_RETRY + 1): # インターネット接続を確認(接続の試行) try: # インターネット接続確認として google.com へ接続を試す url = 'https://www.google.com/' res = requests.get(url) # インターネット接続失敗時の処理 except Exception as e: print("Internet connection failure. retry={}/{}".format(i, MAX_RETRY)) time.sleep(5) # インターネット接続成功時はループを抜ける else: break # リトライが全部失敗した時の処理 else: print("Internet connection is disabled.") print("Program termination.") sys.exit() internet_onoff() |
プログラム内の英語は結構適当です。
ではでは。
コメント