Python读取PDF文档

 1 from pdfminer.converter import PDFPageAggregator
 2 from pdfminer.layout import LAParams
 3 from pdfminer.pdfparser import PDFParser
 4 from pdfminer.pdfparser import PDFDocument
 5 from pdfminer.pdfinterp import PDFResourceManager
 6 from pdfminer.pdfinterp import PDFPageInterpreter
 7 from pdfminer.pdfdevice import PDFDevice
 8 
 9 # 获取文档对象
10 fp = open("banReport.pdf","rb")
11 
12 # 创建一个PDF文档解释器
13 parser = PDFParser(fp)
14 
15 # PDF文档的对象
16 doc = PDFDocument()
17 
18 #连接解释器和文档对象
19 parser.set_document(doc)
20 doc.set_parser(parser)
21 
22 # 初始化文档
23 doc.initialize('')
24 
25 # 创建PDF资源管理器
26 resource = PDFResourceManager()
27 
28 #参数分析器
29 laparam = LAParams()
30 
31 # 创建一个聚合器
32 device = PDFPageAggregator(resource,laparams=laparam)
33 # 创建PDF页面解释器
34 interpreter = PDFPageInterpreter(resource,device=device)
35 
36 # 使用文档对象得到页面的集合
37 for page in doc.get_pages():
38     # 使用页面解释器来读取
39     interpreter.process_page(page)
40 
41     # 使用聚合器来获取内容
42     layout = device.get_result()
43 
44     for out in layout:
45         if hasattr(out,"get_text"):
46             print(out.get_text())

 

posted @ 2017-05-19 13:38  banshaohuan  阅读(2864)  评论(0编辑  收藏  举报