嗨,我正在尝试使用IMDbPY库创建一个数据库。但当我试图用get('cast')获取name时。 我怎样才能修好它?代码如下:
from imdb import IMDb
ia = IMDb()
def getmovieID( movie_name ):
movie = ia.search_movie(movie_name)[0] # a Movie instance.
get_movie = ia.get_movie(movie.movieID)
return get_movie
def getcast(movie_name):
movie = getmovieID(movie_name)
casts = []
cast = movie.get('casts')
for a in cast['name']:
casts.append(a)
return casts
print(getcast('The Dark Knight'))
它说: getcast中第17行的文件“C:…/Python/imdbtest.py” 对于内播['name']:
TypeError:字符串索引必须是整数
您必须考虑^ {CD1>}将返回一个HOLL对象的列表,而不是一个带有“名称”键的字典。
我注意到的另一件(次要)事情是,您获取第一个结果的电影ID,然后再次获取电影。这可以使用
ia.update
方法省略一个有效的例子(仍然假设了很多事情,比如搜索至少会给出一个结果):
重构代码
相关问题 更多 >
编程相关推荐