Click here to Skip to main content
14,644,377 members

Pinging IP address in Python in while loop giving return value 1 and 0 in alternative

Yashvanth B asked:

Open original thread
When I am pinging the below IP using the os.system() it is pinging and giving response value 0 if ping successful else 1 when not reachable

but the problem is when I add that in while if destination ip is unreachable also it is returning 0 and 1 in alternative manner (after some time delay)

if ip reachable is it returning 0 continuity

This the link I tried both subprocess.call both the API are giving same output.

https://forum.inductiveautomation.com/t/script-to-ping-computer/16612/6 Python Function to test ping

What I have tried:

import os
from time import sleep

def add():
    print("in add function")

def sub():
    print("in subtract function")

def ping():
    online = os.system("ping -n 1 192.168.0.9")
    if(online == 0):
         print("Avilabe with ",online)
         return True
    else:
         print("Ofline with ",online)
         return False

while True:
   add()
   sleep(0.5)
   if( ping()):
         sub()
    '''
    do other things if ping is successful
    '''
   sleep(0.5)
any alternative API to get return value when system pinging
Tags: Python

Preview



When answering a question please:
  1. Read the question carefully.
  2. Understand that English isn't everyone's first language so be lenient of bad spelling and grammar.
  3. If a question is poorly phrased then either ask for clarification, ignore it, or edit the question and fix the problem. Insults are not welcome.
  4. Don't tell someone to read the manual. Chances are they have and don't get it. Provide an answer or move on to the next question.
Let's work to help developers, not make them feel stupid.
Please note that all posts will be submitted under the http://www.codeproject.com/info/cpol10.aspx.




CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100