5

現在、Pythonsubprocess.POPENと PuTTYを使用して SFTP 転送を行っていpsftp.exeます。

それは機能していますが、本当にきれいでも持ち運び可能でもありません。

Python pysftpを使って同じ動作を再現したいのですが、全てのパラメータをどこに入力すればよいかわかりません。PuTTY には次の構成があります。

  • サーバー IP : 123.123.123.255
  • サーバーポート: 22
  • 接続タイプ: SSH
  • AutoLogin ユーザー名 : MyUser
  • プロキシの種類: HTTP
  • プロキシのホスト名: gw.proxy.fr
  • プロキシ ポート: 1234
  • プロキシ ユーザー名 : ProxyUser
  • プロキシ パスワード: ProxyPass

ファイルを取得できるようにするには、これらすべてのパラメーターを pysftp に入力する方法を教えてください。

編集:Martin Prikryl からの回答を使用して、探索する新しいものをいくつか見つけました。よくわかったら、ソケットを使用する必要があります。必要なすべての情報を入力するにはまだ問題があります。

import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
proxy = ("gw.proxy.fr",1234)
sock.connect(proxy)
target=("123.123.123.255",23)
cmd_connect = "CONNECT {}:{} HTTP/1.1\r\n\r\n".format(*target)
sock.sendall(cmd_connect)

これから受け取る応答はHTTP/1.0 407 Proxy Authentication Requiredです。プロキシ認証情報をどこにも使用していないため、これは正常です。それで、それらをどのように使用してソケットに入力できるか分かりますか?

4

3 に答える 3