Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import re
- import subprocess
- def ping(host):
- """ Ping the address/hostname and return True if packet loss is less than
- 60%. All other results return False or print and error."""
- exp = re.compile(r"\s(\d{1,3})\%\s")
- try:
- test = subprocess.Popen(["ping", "-c 5", "-W 2", host],
- stdout=subprocess.PIPE, stderr=subprocess.PIPE)
- out, error = test.communicate()
- if out:
- stats = re.search(exp, out)
- loss = int(stats.group(1))
- return loss <= 60
- else:
- return False
- except subprocess.CalledProcessError:
- return False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement