1


我有一个关于 python 的imdbpy模块的问题,由于某种原因,我无法检索一些关于电视节目的数据,即使它们存在于 imdb.com 网站上。
例如,如果我使用此代码:

from imdb import IMDb
i = IMDb()
s = i.search_movie('killjoys')
m = i.get_movie(s[0].movieID)
print m.get('rating') 

结果是None即使在imdb.com上它是可用的,所以我应该在这里做什么?并感谢您的帮助:)

4

2 回答 2

3

考虑两件事:

  1. 查询结果列表中的 Movie 对象仅包含有限的数据(您可以通过网络搜索看到的数据)。
  2. 对于一个系列,“组合”页面不显示评级。

因此,在您的示例中,第一个结果将引用 imdbID 3952222。您可以使用以下方法更新(主要)信息:

i.update(m)

但同样,这只会添加主要信息,默认情况下(来自http://www.imdb.com/title/tt3952222/combined页面的信息)

因此,您还需要解析“投票详情”页面:

i.update(m, ['main', 'vote details'])

(或者如果您不需要获取和解析主要详细信息,则只需“投票详细信息”)。

于 2015-08-22T08:39:20.303 回答
0

我找到的解决方案是使用另一个名为omdb的库

import omdb
tv_show_name = "hannibal"
movie = omdb.get(title=tv_show_name, fullplot=True, media_type="series")
rating = movie.imdb_rating

你去吧,这可能有一天会帮助某人;)

于 2015-08-22T14:45:59.047 回答