yzq 发表于 2018-7-11 08:23:06

Python与Cisco 的事儿

#!/usr/bin/python  

  
from netmiko import ConnectHandler
  
from netmiko.ssh_exception import NetMikoTimeoutException
  
import time
  
import sys
  
import getpass
  

  

  
class CiscoNetwork():
  
      def __init__(self,username,password):
  
               self.username = username
  
               self.password = password
  

  
      def CiscoDevice(self,iplist):
  self.device={'device_type':'cisco_ios',
  
                              'username':self.username,
  
                              'password':self.password,
  
                              'ip':iplist
  
                           }
  print('-'*100)
  
               print "[+]connect to network device... %s" %(iplist)
  
               self.connect = ConnectHandler(**self.device)
  self.connect.enable()
  

  
      def gethostname(self):
  
                self.hostname = self.connect.find_prompt()
  
                self.hostname = self.hostname.replace("#","")
  
                print self.hostname
  

  
      def show(self,cmd):
  
             self.output = self.connect.send_command(cmd)
  
               for self.line in self.output.split('\n'):
  
                  if 'line protocol is up'in self.line:
  
                        print (self.line)
  

  
      def close(self):
  
                if self.connect is not None:
  
                     self.connect.disconnect()
  
                     self.connect = None
  

  
if __name__ == '__main__':
  print "[+] This Program is beging done......."
  
      username = raw_input('Username:')
  
      password = getpass.getpass()
  for iplist in open("/opt/other/ip.txt"):
  
                try:
  
                   switch = CiscoNetwork(username,password)
  
                   switch.CiscoDevice(iplist)
  
                   switch.gethostname()
  
                   switch.show('show int')
  
                   switch.close()
  
                except (EOFError, NetMikoTimeoutException):
  
                   print ('Can not connect to Device')
页: [1]
查看完整版本: Python与Cisco 的事儿