python pdfminer键错误“AcroForm”

2024-05-23 13:37:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个获取附件文件名的脚本,如果ext指示一个pdf文件,它将通过以下代码运行它。但是我收到下面的键错误。我找不到任何关于如何纠正或排除故障的信息。我以前已经成功地通过这个脚本运行了PDF表单,不知道为什么它不能像预期的那样运行。在

 if ext == '.PDF' or ext == '.pdf':
      item_field_list = []
      item_number = str(random.randint(1000000, 9999999))
      #try:
      with tempfile.NamedTemporaryFile() as tmp:
           verify_item = 0
           tmp.write(part.get_payload(decode=True))
           parser = PDFParser(tmp)
           doc = PDFDocument(parser)
           fields = resolve1(doc.catalog['AcroForm'])['Fields']

回溯如下:

^{pr2}$

当我做一个print(doc.catalog)时,我得到以下结果:

{'MarkInfo': {'Marked': True}, 'Lang': b'en-US', 'Type': /'Catalog', 'StructTree
Root': <PDFObjRef:162>, 'Pages': <PDFObjRef:2>}

Tags: 文件脚本trueparser附件docpdf文件名