2016-10-07 5 views
1

いくつかの.pdfファイルの内容をディレクトリからtikaライブラリのテキストに変換しようとしていますが、.pdfファイルオブジェクトを正しく読み取っていないと思います。これは私がこれまで試したものです:pythonでディレクトリの各要素の内容に関数を適用する際の問題?

入力:

for filename in sorted(glob.glob(os.path.join(input_directory, '*.pdf'))): 
    with open(filename,"rb") as f: 
     print(f) 
     text = parser.from_file(f) 

出力:Pythonでファイルの内容を歩くの最も効率的な方法がある

<_io.BufferedReader name='/Users/user/Downloads/pdf-files/a_pdf_file.pdf'> 
AttributeError: '_io.BufferedReader' object has no attribute 'decode' 

?。

+2

あなたは、Python 3を使用していますか? "b"フラグを削除してみてください。 – brianpck

+0

助けてくれてありがとう@brianpck、私はそれを削除し、私はまだ 'AttributeError: '_io.TextIOWrapper'オブジェクトには属性 'decode'がないという同じ例外があります。 – tumbleweed

答えて

1

ティカパーサーはパスを受け取り、ファイル自体を開きます。

for filename in sorted(glob.glob(os.path.join(input_directory, '*.pdf'))): 
    parsed = parser.from_file(filename) 
    text = parsed['content'] 
+0

助けてくれてありがとう....大規模なファイルに対してもっと速い方法がありますか? – tumbleweed

関連する問題