J'utilise actuellement python 2.7 et devra faire un ping sur Windows et Linux.Comment saisir l'adresse IP à partir de ping en Python
Je veux créer une fonction qui retournera l'adresse IP d'un ping dans un script python. J'ai actuellement cette fonction
def ping(host):
"""
Returns True if host responds to a ping request
"""
import subprocess, platform
# Ping parameters as function of OS
ping_str = "-n 1" if platform.system().lower()=="windows" else "-c 1"
args = "ping " + " " + ping_str + " " + host
need_sh = False if platform.system().lower()=="windows" else True
# Ping
return subprocess.call(args, shell=need_sh) == 0
En ce moment, il retourne juste vrai ou faux, mais est-il un moyen que je peux courir ping (google.com) et avoir le retour 216.58.217.206. J'ai une liste de serveurs et d'adresses IP et je dois m'assurer que les adresses IP correspondent au nom de domaine complet.
Le code ci-dessus n'a pas d'indentation correcte. Tous les éléments sous la ligne 'def' devraient être indentés. –
Copie possible de [lire sous-processus stdout ligne par ligne] (https://stackoverflow.com/questions/2804543/read-subprocess-stdout-line-by-line) – alfasin