Python 帕拉米科提出;SFTPEROR:已接收垃圾包“;

Python 帕拉米科提出;SFTPEROR:已接收垃圾包“;,python,sftp,paramiko,Python,Sftp,Paramiko,以下代码: t = paramiko.Transport((hostname, port)) t.connect(username=username, password=password) sftp = t.open_sftp_client() 引发此异常: Traceback (most recent call last): File "C:\Users\elqstux\workspace\WxPython\FetcchFile.py", line 41, in &l

以下代码:

    t = paramiko.Transport((hostname, port))
    t.connect(username=username, password=password)
    sftp = t.open_sftp_client()
引发此异常:

Traceback (most recent call last):
File "C:\Users\elqstux\workspace\WxPython\FetcchFile.py", line 41, in <module>
sftp = t.open_sftp_client()
File "C:\Python27\lib\site-packages\paramiko\transport.py", line 845, in        open_sftp_client
return SFTPClient.from_transport(self)
File "C:\Python27\lib\site-packages\paramiko\sftp_client.py", line 106, in from_transport
return cls(chan)
File "C:\Python27\lib\site-packages\paramiko\sftp_client.py", line 87, in __init__
server_version = self._send_version()
File "C:\Python27\lib\site-packages\paramiko\sftp.py", line 108, in _send_version
t, data = self._read_packet()
File "C:\Python27\lib\site-packages\paramiko\sftp.py", line 179, in _read_packet
raise SFTPError('Garbage packet received')
SFTPError: Garbage packet received

我有一个类似的问题,发现这是由于一个程序“gvm”的输出。 我通过更改.bashrc文件修复了它:

#THIS MUST BE AT THE END OF THE FILE FOR GVM TO WORK!!!
#[[ -s "/home/micron/.gvm/bin/gvm-init.sh" ]] && source "/home/micron/.gvm/bin/gvm-init.sh" <== commented this out.
#必须在文件末尾,GVM才能工作!!!

#[[-s”/home/micron/.gvm/bin/gvm init.sh“]&&source”/home/micron/.gvm/bin/gvm init.sh“您是否连接到实际支持SFTP的主机?您是否尝试使用
sftp
命令行工具连接到它?@MartijnPieters我在命令行中测试它,输出是
接收的消息太长1131770482
。然后您需要诊断该部分;这不是Python的问题。您的目标服务器行为不正常。@MartijnPieters您能告诉我们如何忽略输出吗?您不能告诉Python忽略该异常,因为它是致命的。无法建立连接。没错,登录时写入标准输出的任何内容都会破坏ftp协议。
#THIS MUST BE AT THE END OF THE FILE FOR GVM TO WORK!!!
#[[ -s "/home/micron/.gvm/bin/gvm-init.sh" ]] && source "/home/micron/.gvm/bin/gvm-init.sh" <== commented this out.