办公自动化 系列 +1
现在,各类数据分析的书籍,都可以在网上找到PDF版本;
同时,百度文库、各类数据统计文库、行业研究等众多论文报告,是通过PDF的形式去展示输出的;
但是,令人都头疼的是,各类数据分析书中,PDF版本中的表格数据,我们想转化成自己的数据库文件,或者EXCEL文件,却是很难编辑;
今天,就给大家解决这个问题,利用Python,将PDF中的表格和数据读取出来,并写入EXCEL中保存到本地;
先上代码,代码只有30行;
源PDF文件中的表格数据:
代码:
# -*- coding: utf-8 -*- ''' 请确保你在运行这个代码的时候,已经安装了pdfplumber库 如果没有安装,请在[附件-命令提示符]下输入: pip install pdfplumber ''' import pdfplumberimport xlwt# 定义保存Excel的位置 workbook = xlwt.Workbook() #定义workbook sheet = workbook.add_sheet('Sheet1' ) #添加sheet i = 0 # Excel起始位置 path = input('请输入PDF文件位置:' )#path = 'aaaaaa.PDF' # 导入PDF路径 pdf = pdfplumber.open(path) print('\n' ) print('开始读取数据' ) print('\n' )for page in pdf.pages: # 获取当前页面的全部文本信息,包括表格中的文字 # print(page.extract_text()) for table in page.extract_tables(): # print(table) for row in table: print(row) for j in range(len(row)): sheet.write(i, j, row[j]) i += 1 print('---------- 分割线 ----------' ) pdf.close()# 保存Excel表 workbook.save('保存路径/文件名.xls' ) print('\n' ) print('写入excel成功' ) print('保存位置:' ) print('保存路径/文件名.xls' ) print('\n' ) input('PDF取读完毕,按任意键退出' )
最终导出的EXCEL文件:
简简单单30行代码,就将PDF中的表格数据读取出来,并写入EXCEL啦;
拓展: 1、pdfplumber简介 Pdfplumber是一个可以处理pdf格式信息的库。可以查找关于每个文本字符、矩阵、和行的详细信息,也可以对表格进行提取并进行可视化调试。
2、pdfplumber安装 安装直接采用pip即可。命令行中输入
pip install pdfplumber
3、简单使用 import pdfplumberwith pdfplumber.open('path/to/file.pdf' ) as pdf: first_page = pdf.pages[0 ] print(first_page.chars[0 ])
pdfplumber.pdf中包含了.metadata和.pages两个属性。
每个pdfplumber.page的类中包含了几个主要的属性。
.objects/.chars/.lines/.rects 这些属性中每一个都是一个列表,每个列表都包含一个字典,每个字典用于说明页面中的对象信息, 包括直线,字符, 方格等位置信息。 4、一些常用的方法 .extract_text() 用来提取页面中的文本,将页面的所有字符对象整理为的那个字符串 .extract_words() 返回的是所有的单词及其相关信息 .extract_tables() 提取页面的表格 python自动化办公宝典 其中 《python自动化办公宝典》 共包含六个章节97页,不仅有详细的代码解释,而且还有详细的图文说明,通俗易懂,让你轻松完成办公自动化。
python使用PyPDF2和pdfplumber操作pdf; python使用python-docx操作word; python使用python-pptx操作PPT;