-2
私は、pythonでtextwrapモジュールを使用してテキストを書式化しようとしています。何らかの理由で「int型のオブジェクトにlen()がありません」と言っているのですが、なぜその理由が分かりません。それは私が間違って使っているか、私が間違った順序で行っていることでなければなりません。前もって感謝します。TextWrapperモジュールのエラー
ここは画像ではなく私のコードです。
輸入JSON インポート要求 輸入textwrap
ザ・あなたはOMDB(オープンムービーデータベース)を使用して、ムービー
についての情報をつかむために使用できるモジュールです。
クラスMovieFinder():
def LookupMovie(self, movieName):
if not movieName:
return
#Grab the formatted query string
query = self.GetFormattedSearchQuery(movieName)
#Make the request
r = requests.get(query)
#Grab the json data
jsonInfo = r.json()
#Pull out all of the relevant information
searchResults = jsonInfo['Search']
for movie in searchResults:
movieQuery = self.GetFormattedTitleQuery(movie['Title'])
response = requests.get(movieQuery)
jsonInfo = response.json()
movieResult = Result(jsonInfo['Title'], jsonInfo['Year'],
jsonInfo['Rated'], jsonInfo['Plot'],
jsonInfo['Released'], jsonInfo['Runtime'])
self._results.append(movieResult)
def GetFormattedSearchQuery(self, movieName):
movie = 's=' + movieName
formattedQuery = self.queryString + movie
return formattedQuery
def GetFormattedTitleQuery(self, movieName):
movie = 't=' + movieName.replace(" ", "+")
year = '&y='
plot = '&plot=short'
responseType = '&r=json'
formattedQuery = self.queryString + movie + year + plot + responseType
return formattedQuery
def GetResults(self):
return self._results
def __init__(self):
self.queryString = 'http://www.omdbapi.com/?'
self._results = []
クラス結果():
def getTitle(self):
return self._title
def getYear(self):
return self._year
def getRating(self):
return self._rating
def getPlot(self):
return self._plot
def getReleaseDate(self):
return self._releaseDate
def getRuntime(self):
return self._runtime
def printInfo(self):
print ('Title : ' + self.getTitle())
print ('Year : ' + self.getYear())
print ('Release Date : ' + self.getReleaseDate())
print ('Runtime : ' + self.getRuntime())
print ('Rating : ' + self.getRating())
wrapper = textwrap.TextWrapper()
wrapper.subsequent_indent = 16
plotLine = 'Plot : ' + self.getPlot()
lines = wrapper.fill(plotLine)
for line in lines:
print(line)
print ('---------------------------------------')
def __init__(self, title, year, rating, plot, releaseDate, runtime):
self._title = title
self._year = year
self._rating = rating
self._plot = plot
self._releaseDate = releaseDate
self._runtime = runtime
そして 'getPlot'とは何ですか? – TigerhawkT3
ヒント: 'textwrap'はテキストの_strings_を折り返します。だからあなたはそれが文字列を渡すことを確認する必要があります。 –
[質問するときにSOのコードをSOにアップロードできないのはなぜですか?](http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code)を参照してください。 -on-so-when-asking-a-question) –