Linuxで完璧に機能するこのクラスがありました。
class UrlRequestor(object):
def __init__(self, url, headers, data):
self.url = url
self.headers = headers
self.request = urllib2.Request(url)
self.data = data
self.data = data
if self.data:
self.request.add_data(self.data)
for headerName, headerContent in self.headers.iteritems():
self.request.add_header(headerName, headerContent)
def open(self):
self.content = urllib2.urlopen(self.request)
def getHeader(self, headerName):
return self.content.info().getheader(headerName)
def getReturnData(self):
return dict(json.loads(self.content.read()))
def getRawReturn(self):
return self.content.read()}
私はWindowsで実行しようとしてきました-インデントを含む多くのエラーで、私は最終的にこの時点で動けなくなりました。
add_data メソッドの「位置引数」がないようです。これはより大きな問題の兆候だと思いますが。
これが私が持っているコードです。
class UrlRequestor(object):
def __init__(self, url, headers, data):
self.url = url
self.headers = headers
self.request = urllib2.Request(url)
self.data = data
self.data = data
if self.data:
self.request.add_data(self.data)
for headerName, headerContent in self.headers.iteritems():
self.request.add_header(headerName, headerContent)
def open(self):
self.content = urllib2.urlopen(self.request)
def getHeader(self, headerName):
return self.content.info().getheader(headerName)
def getReturnData(self):
return dict(json.loads(self.content.read()))
def getRawReturn(self):
return self.content.read()
私は読むことを気にしません。正しい方向を指すことも気にしません。この時点で、私はかなり困惑しており、少し指摘しても問題はありません。
どうもありがとう。
編集* ** * ** * ** * ** * ** * ** * ** * ** * ** * ****
今後の情報については、Python のバージョンを確認し、2.7.3 をインストールして、Linux とまったく同じコードを問題なく実行しました。