簡體   English   中英

如何使用 paramiko python 從 sftp 文件中解碼 Zip 文件

[英]How to decode Zip file from sftp file using paramiko python

我必須閱讀服務器中存在的 zip、rar 和 7z 文件,並在其中提取自身以進行進一步處理。 我正在使用 paramiko 和 python。 我有一個 sftp 文件,但無法通過 Patool 庫傳遞它。

remote_file = sftp_client.open(output[i],'rb')
sftp = ssh_client.open_sftp()
file = ftp.file(output[i], "r", -1)
lines = file.readlines()
print(lines)
patoolib.extract_archive(output[i], outdir=inputPath)

這里的output[i]是遠程服務器 zip 文件路徑。

您無法使用 SFTP 協議在遠程服務器上解壓縮文件。 那是不可能的。

您也不能使用客戶端庫來解壓縮非本地文件。 您必須下載存檔(到臨時本地文件或至少到內存),解壓縮並上傳提取的文件。 什么可以很慢。

您可以做的最好的事情(如果您有 shell 訪問權限)是在遠程服務器上執行(使用 SSH)任何可用命令來進行提取。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM