3

我使用下面的代码来获取特定电影的演员表(例如前 2 名)。如何获取演员/女演员演过的所有电影的列表?例如,我选择电影《盗梦空间》(1375666),演员是莱昂纳多·迪卡普里奥。那么如何获得莱昂纳多·迪卡普里奥演过的所有电影的列表呢?

from imdb import IMDb
ia = IMDb()

movie = ia.get_movie('1375666')
actor = movie['cast']
print "Cast: "
for i in actor[:2]:
    for j in ia.search_person(str(i))[:1]:
        print i, j.personID
4

1 回答 1

2

这很简单。让我们actor从你的例子中获取他的完整电影:

>>> full_person = ia.get_person(actor[0].getID(), info=["filmography"])
>>> full_person.keys()
['name', u'producer', u'archive footage', u'self', u'writer', u'actor', u'soundtrack', 'in development', 'birth notes', u'thanks', 'akas', 'birth date', 'canonical name', 'long imdb name', 'long imdb canonical name']
>>> full_person["actor"]
[<Movie id:1663202[http] title: ...]

最后一行给出了这个人是演员的电影列表。但请记住,ia.get_person(...)您向 imdb.com 发出了 http 请求。对于演员名单,可能需要一些时间。

于 2015-04-17T23:26:41.733 回答