2015-12-18 2 views
5

मैं पीडीएफ फाइलों से पाठ निकालने की कोशिश कर रहा हूं और बाद में संदर्भों की पहचान करने की कोशिश करता हूं। मैं pdfminer 20140328. उपयोग कर रहा हूँ अपने अच्छी तरह से चल एन्क्रिप्ट नहीं किए गए फ़ाइलों के साथ, लेकिन अब मैं एक फ़ाइल मैं कहाँ मिलता है:पीडीएफ माइनर 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 साथ की जाँच की, कि इस फाइल एईएस एन्क्रिप्ट होने के लिए लग रहा था, लेकिन मैं इसे खोल सकते हैं बिना किसी समस्या के।

  • पहली बार में

    : तो मैं दो प्रश्न पूछना चाहते हैं कि यह कैसे संभव है कि एक दस्तावेज़ एन्क्रिप्टेड है, लेकिन मैं एक पासवर्ड के बिना इसे खोल सकते हैं?

  • और दूसरा: मैं पीडीएफमिनर को फ़ाइल को सही तरीके से कैसे पढ़ूं? कहीं मैं अतिरिक्त एल्गोरिदम प्राप्त करने के लिए pycrypto स्थापित करने के लिए पढ़ता हूं लेकिन यह मेरी समस्या को ठीक नहीं करता है।

बहुत धन्यवाद।

उत्तर

8

मुझे कुछ दस्तावेजों के साथ एक ही समस्या थी। ऐसा लगता है कि दस्तावेज़ एन्क्रिप्ट किया गया है, लेकिन पासवर्ड खाली है। यही कारण है कि हम बिना पासवर्ड के इसे आसानी से खोल सकते हैं।

मैंने उबंटू के qpdf उपयोगिता के साथ समस्या को ठीक करने का अंत किया। यदि आप पासवर्ड प्रदान करते हैं (मेरे मामले में खाली) तो यह फ़ाइल को डिक्रिप्ट कर सकता है। मैं अजगर स्क्रिप्ट में एक शेल कमांड कि एक खाली पासवर्ड के साथ दस्तावेज़ को डिक्रिप्ट हैं कार्यान्वित:

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

जहां

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

pdfminer अब पाठ निकाल देना चाहिए।

-3

एक विंडोज पीडीएफ प्रोग्राम पीडीएफआईएल (www.pdfill.com) है। मैंने प्रोग्राम के मुफ्त टूल संस्करण को एक ही काम करने के लिए उपयोग किया है - दस्तावेज़ के सभी पृष्ठों को बस "विभाजित करें" और परिणाम को सहेजें। सहेजी गई फ़ाइल को पीडीएफमिनेर द्वारा पढ़ा जा सकता है।