2011-01-03 7 views
1

Ubuntuでpythonを使用して、ファイルに関連付けられたメタデータのリストを取得しようとしています。Ubuntuでpythonを使用してファイルに関連付けられたメタデータのリストを取得します。

"extract"コマンドは非常にうまく動作しますが、pythonでどのように使用するのか分かりません。 "extract"が定義されていないというメッセージが表示されます。

+2

何OS:

# Assuming 'property_reader.py' is the name of the module/file in which you saved Tim Golden's code... import property_reader propgenerator = property_reader.property_sets('[your file path]') for name, properties in propgenerator: print name for k, v in properties.items(): print " ", k, "=>", v 

上記のコードの出力は次のようなものでしょうか? Windows、Linux、?? – marcog

+0

Pythonからどうやって使っているのですか? – martineau

答えて

0

あなたがWindowsを使用している場合、あなたの質問はすでにSOに記載されています。

+0

これはコメントではなく、回答として投稿する必要があります。 – marcog

+1

いいえ、私が実際にうんぷんを使っています – mimou

1

extractは、libextractorライブラリに基づいています。 Ubuntuにpython-extractorパッケージをインストールすれば、Pythonからライブラリにアクセスできます。

4

Windowsの[プロパティ]ダイアログの[概要]タブに表示されるメタデータについて質問しているとします。 (そうでない場合は、これを無視してください。)

  1. Python win32 extensionsをダウンロードしてインストールしてください。これはあなたのPython [ver]/Lib/site-packagesフォルダにwin32、win32comなどを入れます。これらはwin32api、win32comなどを持っています。何らかの理由で、(ビルド216で)Python 2.6のバージョンを動作させることができませんでした。私は自分のシステムをPython 2.7にアップデートし、Python 2.7用に216のビルドを使用しました。 (&のインストールをダウンロードするには、上記のリンクをクリックし、 'pywin32'というリンクをクリックし、最新のビルド(現在は216)のリンクをクリックし、システムとPythonのインストールに一致する.exeファイルのリンクをクリックしますそれはpywin32-216.win32-py2.7.exeだった)。
  2. ティムゴールデンのチュートリアルののコードを "Get document summary information"のページからコピーして、自分のコンピュータの.pyファイルに貼り付けてください。
  3. コードを調整する。コードを微調整する必要はありませんが、このTimのスクリプトをメインモジュールとして実行し、最初のsys.argvとしてパス名を指定しないと、エラーが発生します。微調整を行うには、コードの最後までスクロールし、最後のブロックを省略します(if __name__ == '__main__':で始まります)。

property_reader.pyのようにファイルを保存し、そのproperty_sets(filepath)メソッドを呼び出します。このメソッドはジェネレータオブジェクトを返します。ジェネレータを反復して、すべてのプロパティとその値を表示することができます。あなたはこのようにそれを実現することができます。

DocSummaryInformation 
    PIDDSI_CATEGORY => qux 
SummaryInformation 
    PIDSI_TITLE => foo 
    PIDSI_COMMENTS => flam 
    PIDSI_AUTHOR => baz 
    PIDSI_KEYWORDS => flim 
    PIDSI_SUBJECT => bar 
関連する問題