このコードは、インターネットが接続されていないか接続されているかどうかを検出することができます。問題は時折、インターネットが切断されていると言い、その後すぐにインターネットに接続していると言います。これは何度も起こっています。私はウェブを閲覧したり、ビデオを見たりしています。私はインターネットが働いていることを知っています。偽のネガティブを与えるネットワークチェッカーpython
私はコードがちょっと混乱していることを知っています。これらの間違った接続の原因は何ですか?
import win32com.client as w
import socket
s = w.Dispatch("SAPI.SpVoice")
try:
socket.setdefaulttimeout(5)
socket.socket(socket.AF_INET, socket.SOCK_STREAM).connect(("8.8.8.8", 53))
a = True
except Exception:
a = False
pass
while a == True:
while True:
try:
socket.setdefaulttimeout(5)
socket.socket(socket.AF_INET, socket.SOCK_STREAM).connect(("8.8.8.8", 53))
s.Speak("Internet connected")
break
except Exception:
continue
while True:
try:
socket.setdefaulttimeout(5)
socket.socket(socket.AF_INET, socket.SOCK_STREAM).connect(("8.8.8.8", 53))
continue
except Exception:
s.Speak("Internet disconnected")
break
while a == False:
while True:
try:
socket.setdefaulttimeout(5)
socket.socket(socket.AF_INET, socket.SOCK_STREAM).connect(("8.8.8.8", 53))
continue
except Exception:
s.Speak("Internet disconnected")
break
while True:
try:
socket.setdefaulttimeout(5)
socket.socket(socket.AF_INET, socket.SOCK_STREAM).connect(("8.8.8.8", 53))
s.Speak("Internet connected")
except Exception:
continue
ありがとう。私は私がgoogleに置くだろう負荷については考えなかった。例外をキャッチすることについては、私はそれが投げているとは思わない。例外が正しく検出されなかった場合、スクリプトは実行を停止しますか?私は何時間もバックグラウンドでこのスクリプトを実行しますが、実行を停止することはありません。 – Krishi