「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > どのPythonライブラリがプラットフォームに依存しないSFTPサポートを提供しますか?

どのPythonライブラリがプラットフォームに依存しないSFTPサポートを提供しますか?

2025-03-22に投稿されました
ブラウズ:710

Which Python Libraries Provide Platform-Independent SFTP Support?

Pythonを使用したプラットフォームに依存しないSFTP

セキュアファイル転送(SFTP)は安全なデータ交換に不可欠ですが、それをサポートするPythonライブラリを見つけることは課題になる可能性があります。ハードコーディングユーザーの資格情報とリモートの場所がオプションではない場合、代替ソリューションの調査が重要です。その構文は、以下に示すように、比較的簡単です:

Import Paramiko host = "thehost.com" ポート= 22 Transport = Paramiko.Transport((HOST、PORT)) パスワード= "thePassword" username = "theusername" Transport.Connect(username = username、password = password) sftp = paramiko.sftpclient.from_transport(Transport) sysをインポートします path = './thetargetdirectory/' sys.argv [1] localpath = sys.argv [1] sftp.put(localpath、path) sftp.close() Transport.Close() print( 'upload done。')
import paramiko

host = "THEHOST.com"
port = 22
transport = paramiko.Transport((host, port))

password = "THEPASSWORD"
username = "THEUSERNAME"
transport.connect(username=username, password=password)

sftp = paramiko.SFTPClient.from_transport(transport)

import sys
path = './THETARGETDIRECTORY/'   sys.argv[1]
localpath = sys.argv[1]
sftp.put(localpath, path)

sftp.close()
transport.close()
print('Upload done.')

の使用方法の例を次に示します。 パスワード= "thePassword" username = "theusername" Transport = connection.sshclientFactory()。buildprotocol( 'localhost'、none) Transport.RequestService(userauth.sshuserauthclientpassword(username、password))) sftp = channel.sshchannel(輸送) sftp.request_sftp() sysをインポートします path = './thetargetdirectory/' sys.argv [1] localpath = sys.argv [1] sftp.sendfile(localpath、path) sftp.close() Transport.LoseConnection() print( 'upload done。')

ParamikoとTwistedの両方は、Pythonのプラットフォームに依存しないSFTP接続を促進できます。 Paramikoの使用はより簡単ですが、Twistedはより高度な機能を提供します。 2つの選択は、プロジェクトの特定の要件に依存します。
            
リリースステートメント この記事は、侵害がある場合は1729596378に再現されています。勉強[email protected]に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3