python自动化脚本

请各位学霸帮我看看我这个在数据写入时为什么写不进去,也没有报错。

主要问题可能在于class write_data类,以及华为类中的write_data调用,或者是登录操作完成后没有保持连接??我也不知道问题出在哪,以上是我自己的怀疑,希望有知道问题原因的学霸能为我解答一下。
源码:

import telnetlib
import logging
import paramiko
import os
import time
import xlrd
import xlwt
from paramiko import SSHClient
#定义登录方法-SSH&&TELENT
class login_client:
    def __init__(self):
        self.telnet = telnetlib.Telnet()
        self.ssh = paramiko.SSHClient()
    def SSH(self,hostname,port,username,password):
        try:
            self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())       # 允许连接不在know_hosts文件中的主机
            self.ssh.connect(hostname, port, username, password,allow_agent=False, look_for_keys=False)  # 连接服务器
            dis_cu = self.ssh.invoke_shell().recv(999999).decode()
            print(hostname + '主机SSH登录成功!')
            time.sleep(2)
            print(dis_cu)
        except:
            print(hostname + '主机SSH登录失败!' + '\n' + 'Error:请检查相应的IP地址、登录方式、端口号、账号密码是否正确;请稍后重试。')
    def TELNET(self,hostname,port,username,password):
        try:
            # self.tn = telnetlib.Telnet(host_ip,port=23)
            self.telnet.open(hostname,port)
        except:
            print(host_ip + '网络连接失败')
            return False
        # 等待Username:出现后输入用户名,最多等待2秒
        self.telnet.read_until(b'Username: ',timeout=2)
        self.telnet.write(username.encode('ascii') + b'\n')
        # 等待Password:出现后输入用户名,最多等待2秒
        self.telnet.read_until(b'Password: ',timeout=2)
        self.telnet.write(password.encode('ascii') + b'\n')
        # 延时两秒再收取返回结果,给服务端足够响应时间
        time.sleep(2)
        # 获取登录结果
        # read_very_eager()获取到的是的是上次获取之后本次获取之前的所有输出
        command_result = self.telnet.read_very_eager().decode('ascii')
        if 'Login incorrect' not in command_result:
            print(hostname + '主机Telnet登录成功')
            print(command_result)
            return True
        else:
            print(hostname + '登录失败,用户名或密码错误')
            print(command_result)
            return False
#定义数据写入
class write_data:
    def __init__(self):
        self.telnet = telnetlib.Telnet()
        self.ssh = paramiko.SSHClient()
    def ssh_write(self,file):
        commands = open(file, 'r', encoding='UTF-8')
        for i in commands:
            if i != '':
                self.ssh.invoke_shell().send(str(i))
                time.sleep(1)
            elif i == '':
                return True
            else:
                return False
        results = self.ssh.invoke_shell().recv(999999).decode()
        print(results)
    def telnet_write(self,file):
        commands = open(file, 'r', encoding='UTF-8')
        for i in commands:
            print(type(i))
            self.telnet.write(i.encode('ascii')+b'\n')
            time.sleep(1)
        results = self.telnet.read_very_eager().decode('ascii')
        print(results)
#定义华为设备类
class huawei:
    def login(self,host_ip,login_type,port,username,password):
        self.login = login_client()     #初始化登录客户端类,调用其类中的方法
        if str(login_type) == 'SSH':
            self.login.SSH(host_ip,port,username,password)
        elif str(login_type) == 'TELNET':
            self.login.TELNET(host_ip,port,username,password)
        else:
            print(host_ip + '登录异常,请检查login_type字段是否正确!')
    def put(self,login_type,file):
        self.write=write_data()
        if str(login_type) == 'SSH':
            self.write.ssh_write(file)
        elif str(login_type) == 'TELNET':
            self.write.telnet_write(file)
        else:
            print(host_ip + '请求错误,请检查login_type字段!')
if __name__ == '__main__':
    file=xlrd.open_workbook(r'E:\python_crawler\Auto_yunwei\list.xlsx')
    sheet1=file.sheet_by_name('Sheet1')
    begin_number = 1
    while (begin_number < 3):
        hostip_number = 0
        login_type_number = 1
        port_number = 2
        manufacturer_number = 3
        username_number = 4
        password_number = 5
        host_ip=sheet1.cell(begin_number, hostip_number).value      #参数-IP地址
        login_type=sheet1.cell(begin_number, login_type_number).value       #参数-登录类型
        port=int(sheet1.cell(begin_number, port_number).value)      #参数-端口号
        manufacturer=sheet1.cell(begin_number, manufacturer_number).value       #参数-厂商
        username=sheet1.cell(begin_number, username_number).value       #参数-用户名
        password=sheet1.cell(begin_number, password_number).value       #参数-密码
        #print(host_ip,login_type,port,manufacturer,username,password)
        HUAWEI=huawei()     #初始化huwei类
        if str(manufacturer) == 'huawei':
            if HUAWEI.login(host_ip,login_type,port,username,password): #调用华为类的登录方法
                file = 'E:\python_crawler\Auto_yunwei\huawei.txt'
                HUAWEI.put(login_type, file)
        else:
             print('该主机厂商目前未支持!请手动配置!')
             break
        begin_number+=1


file = 'E:\python_crawler\Auto_yunwei\huawei.txt'

->
file = r'E:\python_crawler\Auto_yunwei\huawei.txt'
或者
file = 'E:\\python_crawler\\Auto_yunwei\\huawei.txt'