python3.x 用に実稼働で使用するカスタム HTTP クライアントがあります。ここで、python2.7 に対して同じ機能を実行する必要があります。私は1つのステートメントにのみ問題があります:
data = response.read(amt = 10 *1024 *1024)
応答は次のように返されます。
urllib2.urlopen(request, timeout=timeout)
だからそれはタイプです
httplib.HTTPResponse
httplib.HTTPResponse.read()
python2.7 で、長さのオプション パラメータとして amt をサポートします。それでもエラーが発生します:
Traceback (most recent call last):
File "D:\eclipse_workspace\py27\wsdconfirmationserver.py", line 152, in <module>
print(customHttpRequest(url="http://test.com/"))
File "D:\eclipse_workspace\py27\wsdconfirmationserver.py", line 109, in customHttpRequest
data = response.read(amt = 10 *1024 *1024)
TypeError: read() got an unexpected keyword argument 'amt'
ここで面白いことに、httplib.HTTPResponse のソースで read() の名前を変更すると、この関数はもう失敗しなくなりますが、コードに無数の他の問題が発生することは明らかです。なぜこれが起こるのか不思議です... Pythonのバグのように思えますが...多分私には理解できないものです。お時間をいただきありがとうございます!