Python Ping
-
Executar ping no servidor em Python usando o método
subprocess.call()
-
Ping Server em Python usando o método
os.system()
-
Executar ping no servidor em Python usando a função
ping3.ping()
Este tutorial explicará vários métodos para executar ping em um servidor usando Internet Control Message Protocol (ICMP) em Python. O ping é usado para verificar se um determinado servidor está disponível ou não em um protocolo de Internet. Ele mede o tempo que leva para uma mensagem chegar ao destino (servidor) e para uma resposta do servidor chegar à origem.
Executar ping no servidor em Python usando o método subprocess.call()
O método subprocess.call(command)
recebe command
como entrada e o executa. Ele retorna 0
se o comando for executado com sucesso.
O comando para fazer ping em um servidor será ping -c 1 host_address
para Unix e ping -n 1 host_address
para Windows, onde 1
é o número de pacotes e host_address
é o endereço do servidor que queremos fazer o ping.
Podemos usar o método platform.system()
primeiro para verificar o sistema operacional da máquina e, em seguida, executar o comando de acordo. O código de exemplo a seguir demonstra como usar o método subprocess.call()
para executar o comando de ping em um servidor em Python.
import platform
import subprocess
def myping(host):
parameter = "-n" if platform.system().lower() == "windows" else "-c"
command = ["ping", parameter, "1", host]
response = subprocess.call(command)
if response == 0:
return True
else:
return False
print(myping("www.google.com"))
Ping Server em Python usando o método os.system()
O método os.system(command)
recebe o command
(uma string) como entrada e o executa em um subshell. O método retorna 0
se o comando for executado sem nenhum erro.
Podemos usar o método os.system()
da seguinte maneira para executar o comando do servidor ping:
import os
def myping(host):
response = os.system("ping -c 1 " + host)
if response == 0:
return True
else:
return False
print(myping("www.google.com"))
Executar ping no servidor em Python usando a função ping3.ping()
A função ping(addr)
do módulo ping3
leva o endereço do servidor como entrada e retorna o tempo de ping como saída se o servidor estiver disponível e retorna False
se não estiver disponível.
Podemos instalar o módulo ping3
com privilégios de root
.
pip install ping3
Podemos passar o endereço do servidor para o método ping()
para fazer o ping do servidor.
from ping3 import ping
def myping(host):
resp = ping(host)
if resp == False:
return False
else:
return True
print(myping("www.google.com"))