import socket, schedule, time
from create_and_update_xlsx_sheets import create_and_update_worksheets
REMOTE_SERVER = "www.google.com"
def is_connected():
try:
host = socket.gethostbyname(REMOTE_SERVER)
s = socket.create_connection((host, 80), 2)
return True
except:
pass
return False
schedule.every().minute.do(create_and_update_worksheets())
私は関数create_and_update_worksheets()
を持っています。私は一度それを実行してインターネット接続をテストしたい。私はschedule.every().minute.do(create_and_update_worksheets())
と言っています。いいえ、接続を最大で5回、is_connected()
でテストしてください。その時間内に接続がTrueであれば、スケジュールタスクを実行するか、そうでなければパスします。どんな巧妙なアイデアをするか?create_and_update_worksheets()関数を実行する前の条件
各試行の間に5分待つ必要があることに注意してください。試行がTrueの場合、create_and_update_worksheets()が実行され、残りの試行は終了しません。クリアでは、3回目の試行で成功すると、schedule.every().minute.do(create_and_update_worksheets())
と4回目と5回目の試行は試行されません。
申し訳ありませんが、私の質問は少し不明かもしれませんが、試行のたびに5分待ってください。試行がTrueの場合、 'create_and_update_worksheets()'が実行され、残りの試行はあなたの答えと同じように終了しません。明らかに、3回目の試行は成功し、 'schedule.every()。minute.do(create_and_update_worksheets())'となり、4回目と5回目の試行は試みられません。 –
@ J.Doe私は自分の答えを更新しました。 – gommb