我有一个pdf文件。它包含四列,所有页面都没有网格线。他们是学生的标志。
我想对这种分布进行一些分析。(直方图,折线图等)。
我想将这个pdf文件解析为电子表格或HTML文件(我可以很容易地解析它)。
pdf的链接是:
这是一份公开文件,可以在任何人公开使用。
注意:我知道这可以通过将文件从adobe reader导出到文本然后将其导入Libre Calc或Excel来完成。但是我想用python脚本来做这件事。
请帮我解决这个问题。 眼镜: Windows 7的 Python 2.7
答案 0 :(得分:17)
使用PyPDF2
:
from PyPDF2 import PdfFileReader
with open('CT1-All.pdf', 'rb') as f:
reader = PdfFileReader(f)
contents = reader.getPage(0).extractText().split('\n')
pass
当您打印contents
时,它看起来像这样(我在这里修剪过它):
[u'Serial NoRoll NoNameCT1 Marks (50)111MA20026KARADI KALYANI212AR10029MUKESH K
MAR5', u'312MI31004DEEPAK KUMAR7', u'413AE10008FADKE PRASAD DIPAK27', u'513AE10
22RAHUL DUHAN37', u'613AE30005HIMANSHU PRABHAT26.5', u'713AE30019VISHAL KUMAR39
, u'813AG10014HEMANT17', u'913AG10028SHRESTH KR KRISHNA37.51013AG30009HITESH ME
RA33.5', u'1113AG30023RACHIT MADHUKAR40.5', u'1213AR10002ACHARY SUDHEER11', u'1
13AR10004AMAN ASHISH20.5', u'1413AR10008ANKUR44', u'1513AR10010CHUKKA SHALEM RA
U11.5', u'1613AR10012DIKKALA VIJAYA RAGHAVA20.5', u'1713AR10014HRISHABH AMRODIA
1', u'1813AR10016JAPNEET SINGH CHAHAL19.5', u'1913AR10018K VIGNESH42.5', u'2013
R10020KAARTIKEY DWIVEDI49.5', u'2113AR10024LAKSHMISRI KEERTI MANNEY49', u'2213A
10026MAJJI DINESH9.5', u'2313AR10028MOUNIKA BHUKYA17.5', u'2413AR10030PARAS PRA