imdbpy 评级数据缺失

imdbpy rating data missing


我有一个关于 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 上可用 那我应该怎么办呢?并感谢您的帮助:)

考虑两件事:

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

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

i.update(m)

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

因此,您还需要使用以下内容解析 "vote details" 页面:

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

(如果您不需要获取和解析主要详细信息,则只需 'vote details')。

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

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

好了,这可能有一天会对某人有所帮助 ;)