糟糕,将 SFTP 与 Databricks 连接时出现未处理的类型 3 ('unimplemented') 错误
Oops, unhandled type 3 ('unimplemented') error while connecting SFTP with Databricks
我正在尝试从 python 中带有数据块的笔记本连接到 SFTP。我的笔记本看起来像这样:
import pysftp
import paramiko
# set parameters
host_name = 'xx.xxx.xxx.xxx'
username = 'FTP_USERNAME'
file_path_to_rsa_key = "/path/key_rsa"
cnopts = pysftp.CnOpts()
cnopts.hostkeys = None
# connect to SFTP
sftp = pysftp.Connection(host_name, username=username, private_key=file_path_to_rsa_key, cnopts=cnopts)
data = sftp.listdir()
sftp.close()
# Prints out the directories and files, line by line
for i in data:
print(i)
我有以下错误:
Oops, unhandled type 3 ('unimplemented')
当运行以下块时:
try:
conn = pysftp.Connection(host_name, username=username, private_key=file_path_to_rsa_key, cnopts=cnopts)
print("connection established successfully")
except:
print('failed to establish connection to targeted server')
它打印connection established successfully
这是什么意思?我应该怎么办? listdir()
有问题吗?
看来这个问题主要是因为 pysftp。我最终完全切换到 paramiko 并且一切正常。 SFTP 服务器修改了登录响应,pysftp 在可接受的响应中过于严格,无法顺利接受。当我尝试使用 non-RSA 私钥时,我注意到类似的事情,它直接对 ssh / sftp 工作正常,但对 pysftp.
这里还有一些有趣的信息
我正在尝试从 python 中带有数据块的笔记本连接到 SFTP。我的笔记本看起来像这样:
import pysftp
import paramiko
# set parameters
host_name = 'xx.xxx.xxx.xxx'
username = 'FTP_USERNAME'
file_path_to_rsa_key = "/path/key_rsa"
cnopts = pysftp.CnOpts()
cnopts.hostkeys = None
# connect to SFTP
sftp = pysftp.Connection(host_name, username=username, private_key=file_path_to_rsa_key, cnopts=cnopts)
data = sftp.listdir()
sftp.close()
# Prints out the directories and files, line by line
for i in data:
print(i)
我有以下错误:
Oops, unhandled type 3 ('unimplemented')
当运行以下块时:
try:
conn = pysftp.Connection(host_name, username=username, private_key=file_path_to_rsa_key, cnopts=cnopts)
print("connection established successfully")
except:
print('failed to establish connection to targeted server')
它打印connection established successfully
这是什么意思?我应该怎么办? listdir()
有问题吗?
看来这个问题主要是因为 pysftp。我最终完全切换到 paramiko 并且一切正常。 SFTP 服务器修改了登录响应,pysftp 在可接受的响应中过于严格,无法顺利接受。当我尝试使用 non-RSA 私钥时,我注意到类似的事情,它直接对 ssh / sftp 工作正常,但对 pysftp.
这里还有一些有趣的信息