2015-12-18 22 views
5

私はpdfファイルからテキストを抽出し、後でその参照を識別しようとしています。私はそのうまく動作して暗号化されていないファイルではpdfminer 20140328.を使用していますが、私は今、私が手ファイルだ:PDF Miner PDFEncryptionError

File "C:\Tools\Python27\lib\site-packages\pdfminer\pdfdocument.py", line 348, in _initialize_password

raise PDFEncryptionError('Unknown algorithm: param=%r' % param)

pdfminer.pdfdocument.PDFEncryptionError: Unknown algorithm: param={'CF': {'StdCF': {'Length': 16, 'CFM': /AESV2, 'AuthEvent': /DocOpen}}, 'O': '}\xe2>\xf1\xf6\xc6\x8f\xab\x1f"O\x9bfc\xcd\x15\xe09~2\xc9\\x87\x03\xaf\x17f>\x13\t^K\x99', 'Filter': /Standard, 'P': -1548, 'Length': 128, 'R': 4, 'U': 'Kk>\x14\xf7\xac\xe6\x97\xb35\xaby!\x04|\x18(\xbfN^Nu\x8aAd\x00NV\xff\xfa\x01\x08', 'V': 4, 'StmF': /StdCF, 'StrF': /StdCF}

私はpdfinfoでチェックし、このファイルはAESを暗号化するように見えたことが、私はそれを開くことができます問題なく。 は、だから私は二つの質問があります:最初の

  • を:それはどのように文書が暗号化されている可能性があるが、私は、パスワードなしでそれを開くことができますか?

  • 第2に、どうすればPDFMinerを正しく読み込むことができますか?どこか別のアルゴリズムを入手するためにpycryptoをインストールするように読んだが、問題を解決しなかった。

多くのありがとう。

答えて

8

私はいくつかのドキュメントで同じ問題を抱えていました。 ドキュメントは暗号化されているようですが、パスワードは空白です。だから私たちは簡単にパスワードなしで開くことができます。

私は、Ubuntuのqpdfユーティリティでこの問題を解決しました。パスワード(私の場合は空白)を入力すると、ファイルを解読できます。

`pdf_filename` - filename of encrypted pdf, 
`pdf_filename_decr` - filename of a new decrypted copy. 

pdfminerは今テキストを抽出する必要があり

from subprocess import call 
call('qpdf --password=%s --decrypt %s %s' %('', pdf_filename, pdf_filename_decr), shell=True) 

:私は、空のパスワードを使用して文書を復号化するだろうPythonスクリプトでシェルコマンドを実装しました。

-3

Windows PDFプログラムPDFill(www.pdfill.com)があります。私は同じことをするためにプログラムのフリー・ツール版を使用しました。ドキュメントのすべてのページを「分割」して結果を保存するだけです。保存されたファイルは、pdfminerによって読み取られます。

関連する問題