通过telnet自动下载cfg配置文件

源代码如下:

 

import telnetlib
import logging
import datetime
import csv
import time


def telnetfunc(enbid, host, user, passwd):

    try:
        tn = telnetlib.Telnet(host)
        tn.read_until(b'login: ')
        tn.write(user.encode('ascii') + b'\n')
    
        tn.read_until(b'Password: ')
        tn.write(passwd.encode('ascii') + b'\n')
        
        timestr = datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
        command = 'tftp -l /ata2/VER/CFG/cur.cfg -r %s-%s.cfg -p 10.204.195.129'%(enbid, timestr)
        tn.read_until(b'#')
        print('登录成功')
        tn.write(command.encode('ascii')+b'\n')
    
        tn.read_until(b'#')
        tn.close()
        return True

    except:
        logging.warning('%s网络连接失败'%host)
        return False

def csvloop(filename):
    with open(filename, newline='') as csv_file:
        csv_table = csv.reader(csv_file, delimiter=',')
        next(csv_table)
        for enb in csv_table:
            print("正在上传第%d个站的配置文件"%(csv_table.line_num-1), enb[0])
            telnetfunc(enb[2], enb[3], enb[4], enb[5])
            time.sleep(2)

if __name__ == '__main__':

    csvloop('D:/yanfa/py/197IP.csv')

  

csv配置文件格式:

 

posted on 2019-06-05 16:09  梓沂  阅读(726)  评论(0编辑  收藏  举报