Hachoirを使用してビデオファイルからメタデータを取得しようとしています。'get'などを使用して幅と高さの値を返す場合を除いて、適切に機能します。
私はそれが次のようになると思いました:
metadata.get('width')
ただし、これはエラーをスローします(オブジェクトには'width'プロパティがありません)。
私が以下を実行すると:
for data in sorted(metadata):
if len(data.values ) > 0:
print data.key, data.values[0].value
返されるのは、「共通」グループからの情報だけです。
私が使用するとき:
metadata.exportPlaintext
...「共通」、「ビデオストリーム」、「オーディオストリーム」からの情報が返されます。結果の「text」アイテムを解析して、高さと幅の値を取り除くこともできますが、metadata.get('width')などを使用して適切に実行しようとします。
ソースコードを見て、私は次のものを使うことができると思いました:
for key, metadata in metadata.__groups.iteritems():
メタデータ内の._グループを反復処理しますが、「'AsfMetadata'オブジェクトには属性' _groups'がありません-'AsfMetadata'はMultipleMetadataのサブクラスであると思っていたので、そうではないはずです。 ()そのような変数を持っています。
おそらく、かなり明白な何かが欠けています。