【问题标题】:Python read Router IP from file and telnet intoPython 从文件中读取路由器 IP 并 telnet 到
【发布时间】:2014-07-03 04:45:22
【问题描述】:

我想从一个文本文件中读取一个路由器 IP,然后 telnet 进入它:

import sys
import telnetlib

f = open("C:\\MyIP.txt","r")
line = f.readline()

user = "username"
password = "password"

for line in f:

  tn = telnetlib.Telnet(line)
  tn.read_until("Login: ")
  tn.write(user + "\n")
  if password:
    tn.read_until("Password: ")
    tn.write(password + "\n")

f.close()

但是,在上面的代码中,如果我尝试直接从文件中读取它,它就不起作用了。

只有这样:

import getpass
import sys
import telnetlib
hostserver = "192.168.2.1"
newline = "\n"
username = "username" + newline
password = "password" + newline
telnet = telnetlib.Telnet(hostserver)
telnet.read_until("Login: ")
telnet.write(username+ "\n")
telnet.read_until("Password: ")
telnet.write(password+ "\n")
while 1:
    command = raw_input("> ")
    telnet.write(command+ "\n")
    if command == "exit":
        break
    telnet.read_all()

感谢任何帮助

【问题讨论】:

  • 怎么不工作了?什么是错误?

标签: python telnet readline


【解决方案1】:

你有声明

line = f.readline()

然后,你有:

for line in f:

for 循环将遍历文件尚未被读取的每一行。看起来你根本不想循环。删除 for 语句,因为您的 line 变量已在上面设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 2017-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-04
    • 2012-05-31
    相关资源
    最近更新 更多