1. 程式人生 > >python 抓取cisco交換機配置文件

python 抓取cisco交換機配置文件

cal pytho quit sys led ... eof tex passwd

#!/usr/bin/python
import sys
import time
import os
import pexpect
now = time.strftime(‘%Y-%m-%d‘,time.localtime(time.time()))
aa = open (‘/home/hanlei/test/%s/log.txt‘ % now, "w")
fout = open (‘/home/hanlei/test/%s/log.txt‘ % now, "w")
IP = open(‘/home/hanlei/test/switch_ip‘,‘r‘)
PASS = open(‘/home/hanlei/test/switch_passwd‘,‘r‘)
while 1:
READIP = IP.readline()
READPASS = PASS.readline()
if not READIP:
print ‘END‘
break
foo = pexpect.spawn(‘telnet %s‘ % READIP)
foo.log_file = fout
foo.expect([‘Username:‘])
foo.sendline(‘admin‘)
foo.expect([‘Password:‘])
foo.sendline(‘admin‘)
foo.expect([‘>‘])
foo.sendline(‘en‘)
foo.expect([‘Password:‘])
foo.sendline(READPASS)
foo.expect([‘#‘])
foo.sendline(‘copy flash:config.text scp:‘)
foo.expect([‘Address or name of remote host‘])
foo.sendline(‘192.168.1.141‘) #FTP SERVER
foo.expect([‘Destination username‘])
foo.sendline(‘cisco‘)
foo.expect([‘config.text‘])
foo.sendline(‘t1206‘)
foo.expect([‘Password:‘])
foo.sendline(‘123456‘)
a = foo.expect ([‘bytes/sec‘, ‘Error‘, pexpect.EOF, pexpect.TIMEOUT])
if a == 0:
aa.write(‘%s......ok\n‘ % READIP)
foo.expect([‘#‘])
foo.sendline(‘quit‘)
if a == 1:
aa.write(‘%s......failed\n‘ % READIP)
foo.sendline(‘quit‘)
foo.expect([‘closed‘])
foo.interact
print ‘done‘

python 抓取cisco交換機配置文件