Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Paramiko Python:Paramiko.transport没有处理程序-获取类型错误_Python_Ssh_Paramiko - Fatal编程技术网

Paramiko Python:Paramiko.transport没有处理程序-获取类型错误

Paramiko Python:Paramiko.transport没有处理程序-获取类型错误,python,ssh,paramiko,Python,Ssh,Paramiko,好的,我正试图在python脚本中实现paramiko。 其目的是连接到同一LAN中的另一台PC,并通过python执行命令 我的python版本: Python 2.7.6 (default, Oct 26 2016, 20:30:19) [GCC 4.8.4] on linux2 我这里有一个基本代码: import paramiko client = paramiko.SSHClient() host = '192.168.xx.xx' username = 'username' p

好的,我正试图在python脚本中实现paramiko。
其目的是连接到同一LAN中的另一台PC,并通过python执行命令

我的python版本:

Python 2.7.6 (default, Oct 26 2016, 20:30:19) 
[GCC 4.8.4] on linux2
我这里有一个基本代码:

import paramiko
client = paramiko.SSHClient()

host = '192.168.xx.xx'
username = 'username'
password = 'password'

client.connect(host, username=username, password=password)
stdin, stdout, stderr = client.exec_command('ls')
for line in stdout:
    print('... ' + line.strip('\n'))
client.close()
但是我得到了以下错误:

No handlers could be found for logger "paramiko.transport"
Traceback (most recent call last):
  File "testbed.py", line 8, in <module>
    client.connect(host, username=username, password=password)
  File "/usr/local/lib/python2.7/dist-packages/paramiko/client.py", line 385, in connect
    t.start_client(timeout=timeout)
  File "/usr/local/lib/python2.7/dist-packages/paramiko/transport.py", line 543, in start_client
    raise e
TypeError: 'type' object is not iterable
找不到记录器“paramiko.transport”的处理程序
回溯(最近一次呼叫最后一次):
文件“testbed.py”,第8行,在
client.connect(主机,用户名=用户名,密码=密码)
文件“/usr/local/lib/python2.7/dist-packages/paramiko/client.py”,第385行,在connect中
t、 启动\u客户端(超时=超时)
文件“/usr/local/lib/python2.7/dist packages/paramiko/transport.py”,第543行,在start_client中
提高e
TypeError:“type”对象不可编辑

在我的例子中,错误并没有说明什么

因此,首先我处理了
无法找到记录器“paramiko.transport”
的处理程序,并在脚本顶部添加了

import logging
logging.getLogger('paramiko.transport').setLevel(logging.DEBUG)
paramiko.util.log_to_file("/tmp/example.log")   <= to redirect the logs to a file
与pip正在安装的默认值相比,您需要
enum34
enum

就我个人而言,我还有另一个问题,那就是我首先安装了
enum34
,而不是使用
--user
安装了personal

pip uninstall enum
pip uninstall enum --user
pip install enum34 --user

这对我很有用,希望它能帮助我

可能重复@FranciscoRodríguez链接中的答案对我不起作用。
pip uninstall enum
pip uninstall enum --user
pip install enum34 --user