我使用paramiko在python中打開遠程sftp文件。用paramiko返回的文件對象,我正在逐行讀取文件並處理信息。與使用os內置的「open」方法相比,這看起來非常慢。以下是我用來獲取文件對象的代碼。在Python中使用paramiko打開遠程文件慢
使用的paramiko(由2倍慢) -
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(myHost,myPort,myUser,myPassword)
sftp = client.open_sftp()
fileObject = sftp.file(fullFilePath,'rb')
使用操作系統 -
import os
fileObject = open(fullFilePath,'rb')
我錯過了什麼?有沒有辦法使paramiko fileobject的讀取方法與使用os fileobject的讀取方法一樣快?
謝謝!
噢,我應該提到,你不需要在'sftp.file'調用'rb'中的'b'。從paramiko docs:「python'b'標誌被忽略,因爲SSH將所有文件視爲二進制文件。」 – jozzas