我想在Windows和Linux PC之间建立连接。我正在使用Paramiko(SFTP):
ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
ssh_client.load_system_host_keys()
ssh_client.connect(ip, 22, user, pwd)
sftp_client = ssh_client.open_sftp()
我没有得到一个错误,所以我认为连接工作。但我无法从远程PC获取文件。我想获取SQLite数据库或其数据:
file = sftp_client.get("Data.db")
我不知道SQLite数据库是否不可读或不可编辑,或者我只是使用了错误的语法。
1条答案
按热度按时间v9tzhpje1#
Paramiko
SFTPClient.get
方法接受(至少)两个参数,但不返回任何内容。所以应该是这样的:
如果你在Windows上:
如果您实际上不想下载该文件,而是像使用本地文件一样使用它,请使用
SFTPClient.getfo
:它返回一个类似文件的对象,您可以在许多Python API中使用它。虽然我没有看到任何提到SQLite Python API支持文件类对象。
即使它这样做,使用起来也会很慢。如果您要修改数据库的相对较大的部分,下载整个数据库,在本地进行更改并重新上载可能会更快。