Ошибка В Python Pysftp

мой код:

import pysftp 
s = pysftp.Connection(host='test.rebex.net', username='demo', password='password') 
data = s.listdir() 
s.close() 
for i in data: 
    print i

Я получаю сообщение об ошибке при попытке подключиться к серверу SFTP с помощью pysftp.

Это должно быть достаточно прямо, но я получаю ошибку ниже:

Traceback (most recent call last):
  File "/Users/gavinhinfey/Documents/Python Files/sftp_test.py", line 3, in <module>
    s = pysftp.Connection(host='test.rebex.net', username='demo', password='password')
  File "build/bdist.macosx-10.6-intel/egg/pysftp.py", line 55, in __init__
  File "build/bdist.macosx-10.5-intel/egg/paramiko/transport.py", line 303, in __init__
paramiko.SSHException: Unable to connect to test.rebex.net: [Errno 60] Operation timed out
Exception AttributeError: "'Connection' object has no attribute '_tranport_live'" in <bound     method Connection.__del__ of <pysftp.Connection object at 0x101a5a810>> ignored

Я пробовал использовать разные версии python (в основном 2.7), у меня установлены все зависимости, и я пробовал многочисленные соединения sftp. Я использую OS X 10.9.1.

2 ответов


что первоначальная ошибка проблема подключения к удаленному серверу (SSHException). Второй (AttributeError) - это ошибка в коде, которая возникает при сбое соединения. Он исправлен в последней версии pysftp

https://pypi.python.org/pypi/pysftp

pip install -U pysftp

- твой друг.


обновление пакета не сработало для меня, так как он уже был обновлен (последний для python 2.7 По крайней мере)

нашел лучший aproach здесь.

1) Вы можете вручную добавить ключ ssh в файл known_hosts

ssh test.rebex.net

2) или вы можете установить флаг, чтобы игнорировать его

import pysftp
cnopts = pysftp.CnOpts()
cnopts.hostkeys = None    # disable host key checking.
with pysftp.Connection('host', username='me',private_key=private_key,
                           private_key_pass=private_key_password,
                           cnopts=cnopts) as sftp
    # do stuff here