2017-11-13 3 views
2

人口統計(性別、年齢層別)別にIMDb評価の詳細を収集したいと思います。人口統計(IMDbpyを使用)でIMDb評価を抽出するのが難しい

imdbpyでget_movie_vote_detailsモジュールを使用しようとすると、出力が空になります。ここ は私のコードです:

import imdb 

i = imdb.IMDb(accessSystem='http') 

movie = i.get_movie('0780504') 

print(movie) 

votes = i.get_movie_vote_details('0780504') 

print(votes) 

、ここでは出力されます:あなたが見ることができるように

print(m)

Drive

print(votes)

{'charactersRefs': {}, 'data': {}, 'namesRefs': {}, 'titlesRefs': {}}

、 "票" が出力されます少しです。 imdbpyを使って評価の詳細を抽出する方法はありますか?

+0

Iタイヤ同じコードとそれがライブラリとエラーのようになります。「"はAttributeError : 'DOMHTMLPlotParser'オブジェクトに '_useModule'属性がありません 上記の例外の処理中に別の例外が発生しました: msg = self.args TypeError:forマット列 コールスタック: メッセージ:「%sの:レフリーを収集することができない:%s」が 引数:そのバグ:(「DOMHTMLPlotParser」、「) ドライブ」は、不思議なタイトルではなく、他のデータ – oetoni

+0

@oetoniを印刷しますリポジトリのバージョンではすでに修正されています。 –

答えて

1

は、あなたが直接.get_movie_XYZ(...)メソッドを呼び出すことになっていません:。彼らはIMDBの()更新(...)メソッドを使用して作品のインスタンスを更新するために内部的に使用されています。例えば

:あなたはすべての利用可能な情報セットをお知りになりたい場合は

import imdb 

i = imdb.IMDb(accessSystem='http') 

movie = i.get_movie('0780504') 
i.update(movie, 'vote details') 
print(movie.get('mean and median') 

i.get_movie_infoset()を呼び出します。特定の情報セットが更新されたときに追加されたムービーインスタンスのキーを確認するには、movie.infoset2keyマッピングを使用します。

詳細については、official documentationを参照してください。データの形式について

、このコード:

from imdb import IMDb 
ia = IMDb() 
m = ia.get_movie('0780504', 'vote details') 
print('median', m.get('median')) 
print('arithmetic mean', m.get('arithmetic mean')) 
print('number of votes', m.get('number of votes')) 
print('demographics', m.get('demographics')) 

が出力されます。このような何か: median 8 arithmetic mean 7.8 number of votes {1: 8626, 2: 4135, 3: 5762, 4: 9264, 5: 17595, 6: 39440, 7: 84746, 8: 133331, 9: 98870, 10: 75737} demographics {'imdb staff': {'rating': 7.8, 'votes': 36}, 'aged under 18': {'rating': 8.5, 'votes': 844}, 'non us users': {'rating': 7.8, 'votes': 250586}, 'top 1000 voters': {'rating': 7.6, 'votes': 739}, 'males aged 45 plus': {'rating': 7.4, 'votes': 24213}, 'aged 45 plus': {'rating': 7.4, 'votes': 28779}, 'aged 18 29': {'rating': 7.9, 'votes': 183217}, 'us users': {'rating': 8.0, 'votes': 71299}, 'aged 30 44': {'rating': 7.7, 'votes': 181063}, 'males aged under 18': {'rating': 8.5, 'votes': 705}, 'males aged 30 44': {'rating': 7.8, 'votes': 152988}, 'females aged under 18': {'rating': 7.9, 'votes': 133}, 'males aged 18 29': {'rating': 8.0, 'votes': 148749}, 'females aged 45 plus': {'rating': 7.4, 'votes': 4004}, 'imdb users': {'rating': 7.8, 'votes': 477506}, 'females aged 18 29': {'rating': 7.6, 'votes': 32575}, 'females': {'rating': 7.6, 'votes': 65217}, 'males': {'rating': 7.9, 'votes': 341617}, 'females aged 30 44': {'rating': 7.5, 'votes': 25465}}

+0

ありがとう@ダビデ。私は構文をよりよく理解し、他の詳細情報(予算、総額など)を引き出すために使用しました。 *今後のアップデートを予定していて、評価機能が修正されることを期待しています。 – driskerr

+0

@driskerrパーサは修正されました。あなたができるなら、それを試してください(そして満足する答えを見つけたら、それを受け入れてください)。 –

+0

hmmこれはまさに私が探しているものですが、残念ながら、imdbpyを再インストールしたときに、まったく同じコードを実行すると、次のような結果が得られます: 'medianなし 算術平均なし 投票数なし 人口統計なし – driskerr

関連する問題