Réseau Local ping en python
Personne ne sait comment utiliser python pour les de ping à un hôte local pour voir si il est actif ou pas? Nous (mon équipe et moi-même) ont déjà essayé d'utiliser
os.system("ping 192.168.1.*")
Mais la réponse de destination inaccessible est la même que la réponse de l'hôte.
Merci pour votre aide.
OriginalL'auteur Justin Gardner | 2011-10-06
Vous devez vous connecter pour publier un commentaire.
Utiliser ce ...
Si vous utilisez ce script sous unix/Linux remplacer commutateur-n-c !
C'est tout 🙂
OriginalL'auteur Avi Mehenwal
J'ai trouvé que l'utilisation de l'os.système(...) conduit à des faux positifs (comme l'OP a dit, "destination host unreachable' == 0).
Comme indiqué précédemment, à l'aide de sous-processus.Popen œuvres. Pour des raisons de simplicité je recommande de faire qui a suivi, de l'analyse des résultats. Vous pouvez facilement faire cela comme:
Il suffit de consulter les différents résultats que vous voulez vérifier à partir des résultats de la commande ping. Faire un " il "dans" cette " case pour cela.
Exemple:
OriginalL'auteur Michael Flyger
J'ai codé un petit programme, un tout à l'arrière. Il pourrait ne pas être la chose exacte que vous cherchez, mais vous pouvez toujours exécuter un programme sur le système d'exploitation hôte, qui ouvre une socket sur le démarrage. Voici le programme ping lui-même:
Et là, vous avez le programme qui permet de recevoir la requête ping:
Pour exécuter un programme sans vraiment le montrer, il suffit d'enregistrer le fichier en tant que .pyw au lieu de .py.
Il rend invisible jusqu'à ce que l'utilisateur vérifie les processus en cours d'exécution.
Espère que cela vous a aidé
OriginalL'auteur CamIce
Essayez ceci:
-o attend pour un seul paquet
-W 3000 donne seulement 3000 ms pour répondre à ce paquet.
-c 3 permet de l'essayer à quelques reprises afin que votre ping ne marche pas toujours courir
OriginalL'auteur jdi
Pour des raisons de simplicité, j'utilise self-made fonctions basées sur le socket.
si Ip:Port est accessible, return True
Si vous voulez simuler Ping, peut se référer à ping.py
OriginalL'auteur KJoker
L'utiliser et analyser la chaîne de sortie
OriginalL'auteur yo_man
La meilleure façon que j'ai pu trouver pour ce faire sur Windows, si vous ne voulez pas être l'analyse de la sortie est d'utiliser Popen comme ceci:
Cela fonctionne comme prévu. Le code de sortie donne pas de faux positifs. Je l'ai testé dans Python 2.7 et 3.4 sur Windows 7 et Windows 10.
OriginalL'auteur Daniel F.