1

Python2.5.2が埋め込まれている「企業内部ツール」があります。これは、他のバージョンやプログラミング言語を使用できないことを意味します。したがって、HTTPLIBのコードは次のとおりです。

  connection =  httplib.HTTPSConnection('IP:PORT')
  body_content = '<INPUT><Var1>DATA</Var1></INPUT>/r/n'
  headers = {Authorization':'Basic XXXXXXXXXXXX','Accept':'text/xml','Content-Length':'XX','Host':'host name','Accept-Encoding':'gzip,deflate'}
  connection.request('PUT', '/path/method',body_content, headers)
  result = connection.getresponse()

urllib2のコードは次のとおりです。

  body_content = '<INPUT><Var1>DATA</Var1></INPUT>\r\n'
  opener = urllib2.build_opener(urllib2.HTTPSHandler)
  request = urllib2.Request('https://IP:PORT/path/method', data=body_content)
  request.headers={'Content-length': 'XX', 'Host': 'host', 'Accept': 'text/xml', 'Authorization': 'Basic XXXXXXXXXXXXX', 'Accept-encoding': 'gzip,deflate'}
  request.get_method = lambda: 'PUT'
  url = opener.open(request)

これらは両方とも、デフォルトのpython2.5.2インストールで正常に機能しています。入手したツールで同じコードを使用しようとすると、次のエラーが表示されます。

HTTPLIB:

'module' object has no attribute 'ssl'

URLLIB2:

urlopen error unknown url type: https

私が理解したように、SSLサポートは削除されました。ちなみに、私は自分のライブラリを書くことができ、それらを正しいフォルダに配置することでそれらを機能させることができます。したがって、問題は次のとおりです。プロキシを使用してWebサービスに接続するにはどうすればよいですか。次の例を見つけました: http ://www.pha.com.au/kb/index.php/Python _-_ Using_a_proxy_for_HTTP_requests

しかし、私の場合は機能していません。これをどのように解決できるかについての提案はありますか?PythonでHTTPSクエリを実行するための個別のプロキシモジュールを構築すると、この問題を解決できるようです。では、この場合の接続手順は何でしょうか?

4

0 に答える 0