我試圖使用pdfminer來提取pdf表格中的填寫內容。訪問PDF中的指令是:pdfminer不會從填寫的pdf表格提取數據
- 轉到https://www.ffiec.gov/nicpubweb/nicweb/InstitutionProfile.aspx?parID_Rssd=1073757&parDT_END=99991231
- 單擊「創建報告」從旁邊第四次報告頂部(即銀行機構系統性風險報告(FR Y型15)) :
- 點擊「您的財務報告的要求準備好」
要提取藍色的內容,我從this post複製的代碼
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdftypes import resolve1
filename = 'FRY15_1073757_20160630.PDF'
fp = open(filename, 'rb')
parser = PDFParser(fp)
doc = PDFDocument(parser)
fields = resolve1(doc.catalog['AcroForm'])['Fields']
for i in fields:
field = resolve1(i)
name, value = field.get('T'), field.get('V')
print '{0}: {1}'.format(name, value)
這沒有按預期提取數據字段 - 沒有打印任何內容。我試過其他PDF相同的代碼和它的工作,所以我懷疑故障可能與第一PDF的安全設置,如下所示
有關該代碼工作的第二PDF做的安全設置爲所有操作顯示「允許」。我也嘗試使用pdfminer的pdf2txt.py功能(請參閱here),但原始pdf表單(這是我想要的)字段中填寫的數據不在轉換的文本文件中;只有pdf的「單位」不可填寫部分被轉換。有趣的是,如果我使用Adobe Reader的另存爲文本將pdf轉換爲文本文件,則可轉換文本文件中的可填充部分爲。這是我一直在解決失敗的代碼。
任何想法如何我可以直接從PDF格式提取數據?謝謝。
關於PDF,請訪問https://www.ffiec.gov/nicpubweb/NICDataCache/FRY15/FRY15_1073757_20160630.PDF:*您正在查找的資源已被刪除,名稱已更改或暫時不可用。該網址說「... DataCache ...」,這並不令人驚訝...... – mkl
@mkl感謝您的單挑。鏈接已被修改。 – Nero