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つの選択は、プロジェクトの特定の要件に依存します。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3