Попробуйте так. Сильно не вдавался, но будет запускаться:
import os
import re
import time
import sys
import telnetlib
from threading import Thread
class TestIt(Thread):
def __init__ (self, ip):
Thread.__init__(self)
self.ip = ip
self.status = -1
self.lifeline = re.compile(r"(\d) received")
def run(self):
pingaling = os.popen("ping -q -c2 " + self.ip, "r")
while 1:
line = pingaling.readline()
if not line:
break
igot = re.findall(self.lifeline, line)
if igot:
self.status = int(igot[0])
if self.status == 0:
tn = telnetlib.Telnet(HOST)
tn.read_until("BCM96338 ADSL Router")
tn.read_until("Login:")
tn.write(user + "\n")
tn.read_until("Password: ")
tn.write(password + "\n")
time.sleep(5)
#tn.write("ifconfig ppp_0_1_32_1\n")
tn.write("reboot\n")
time.sleep(5)
tn.write("logout\n")
time.sleep(60)
ip = "213.180.204.8"
HOST = "192.168.168.1"
user = "user"
password = "password"
current = TestIt(ip)
current.start()