Script Python pour vérifier la connectivité Internet
Introduction
Vous utiliseriez ce script pour vérifier l'état de la connectivité Internet dans un système ou un réseau. Ce script peut être utile dans diverses situations où il est important de savoir si Internet est connecté ou non, telles que :
- Tests automatisés : lors de l'exécution de tests automatisés pour une application nécessitant une connectivité Internet, ce script peut être utilisé pour vérifier si Internet est connecté avant d'exécuter les tests. Si Internet n'est pas connecté, le script peut arrêter l'exécution du test et signaler le problème.
- Surveillance : Ce script peut être utilisé pour vérifier périodiquement la connectivité Internet et envoyer des notifications ou des alertes si Internet est déconnecté. Cela peut être utile pour surveiller l'état de la connexion Internet dans un réseau ou un système.
- Diagnostics : Si une application ou un système ne fonctionne pas comme prévu et que vous soupçonnez que la connectivité Internet pourrait être le problème, ce script peut être utilisé pour vérifier rapidement si Internet est connecté ou non. Si Internet est déconnecté, le script peut fournir des correctifs possibles pour le problème.
- Script : ce script peut être utilisé dans un processus de script ou d'automatisation plus large qui repose sur la connectivité Internet, où il peut aider à poursuivre ou à arrêter le processus en fonction de l'état de la connectivité Internet.
Python Script pour vérifier la connectivité Internet
Ce script inclut des blocs try-except qui interceptent différents types d'exceptions et impriment le message d'erreur avec les correctifs possibles pour cette exception.
Dans ce script, j'ai importé la sysbibliothèque et utilisé la sys.exit()méthode pour définir l'état de sortie du script. La sys.exit(0)méthode est utilisée pour indiquer que le script a été exécuté avec succès et qu'Internet est connecté. La sys.exit(1)méthode est utilisée pour indiquer que le script est terminé mais qu'Internet n'est pas connecté.
L'état de sortie peut être vérifié en exécutant le script et en vérifiant la valeur de la variable shell spéciale $? une fois le script terminé, qui est défini sur le statut de sortie. Par exemple, si le script est exécuté et qu'Internet est connecté, la valeur de $? sera 0 ; si Internet n'est pas connecté, la valeur de $? sera 1.
Vous pouvez également utiliser l'état de sortie de votre terminal pour décider de continuer ou non à exécuter d'autres commandes, en fonction de la connectivité Internet.
Voici une ventilation supplémentaire de ce que fait chaque partie du script :
import requests: Larequestsbibliothèque est importée, ce qui permet au script de faire des requêtes HTTP aux sites Web.import socket: Lasocketbibliothèque est importée, qui est utilisée pour intercepter l'socket.timeoutexception.import sys: Lasysbibliothèque est importée, ce qui permet au script d'interagir avec le système et de définir l'état de sortie du script.def check_internet_connectivity():: Une fonction nomméecheck_internet_connectivityest définie. Cette fonction est utilisée pour vérifier si Internet est connecté en essayant de se connecter à un site Web spécifique (dans ce cas, Google.com)requests.get('http://www.google.com', timeout=5): Cette ligne de code tente d'envoyer une requête GET à www.google.com et si elle réussit, le script renverra True, indiquant qu'Internet est connecté. Letimeoutparamètre est défini sur 5 secondes, ce qui signifie que si la demande prend plus de 5 secondes pour se terminer, unesocket.timeoutexception sera déclenchée.except requests.ConnectionError as e:: Ce bloc de code intercepte unerequests.ConnectionErrorexception, qui est déclenchée lorsqu'une connexion au site Web n'a pas pu être établie.print(f"Loss of connectivity: {e}"): Cette ligne de code imprime un message d'erreur sur la console, qui peut donner une idée de la cause de la perte de connectivité.print("Possible fixes:"): Cette ligne de code imprime un message sur la console qui suggère quelques correctifs possibles pour la perte de connectivité.return False: Cette ligne de code renvoie la valeur False, indiquant qu'Internet n'est pas connecté.except socket.timeout as e:: Ce bloc de code intercepte unesocket.timeoutexception, qui est déclenchée lorsqu'une connexion au site Web prend trop de temps à s'établir.except requests.ConnectTimeout as e:etexcept requests.ReadTimeout as e:: Ces blocs de code attrapent respectivement unerequests.ConnectTimeoutetrequests.ReadTimeoutune exception, qui sont déclenchées lorsqu'une connexion au site Web prend trop de temps pour établir ou lire les données respectivementif check_internet_connectivity():: Cette ligne de code vérifie si la fonctioncheck_internet_connectivity()renvoie True. Si c'est le cas, il affiche "Internet est connecté".sys.exit(0): Cette ligne de code est utilisée pour définir l'état de sortie du script sur 0, indiquant que le script s'est terminé avec succès et qu'Internet est connecté.sys.exit(1): Cette ligne de code est utilisée pour définir le statut de sortie du script sur 1, indiquant que le script est terminé mais qu'Internet n'est pas connecté.if check_internet_connectivity():: Cette ligne de code vérifie si la fonctioncheck_internet_connectivity()renvoie False. Si c'est le cas, il affiche "Internet n'est pas connecté".
Merci d'avoir pris le temps de lire mon blog. J'espère que les informations fournies vous ont été instructives et utiles. :) S'il y a autre chose que vous aimeriez savoir ou si vous avez d'autres questions, n'hésitez pas à nous contacter et à demander.
![Qu'est-ce qu'une liste liée, de toute façon? [Partie 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































