当前位置:   article > 正文

python学习笔记(27)——pdfplumber库提取文本及表格内容基础操作_extract_tables

extract_tables

pdfplumber库安装地址:Search results · PyPI

安装后pip安装即可 

1、提取文本:extract_text()解析文本

代码练习:

  1. import pdfplumber#引进pdfplumber库
  2. #print(pdfplumber.__version__)#通过测试证明pdfplumber库安装成功
  3. pdf=pdfplumber.open('F:\\XX公告.PDF')#打开pdf文件,路径之间符号用\\
  4. pages=pdf.pages#通过pages属性获取所有页的信息,此时pages是一个列表
  5. text_all=[]#创建一个空列表
  6. for page in pages:#遍历所有页的数据
  7. text = page.extract_text() # 用extract_text函数获取当前页的文本内容
  8. text_all.append(text)#把遍历的数据加到text_all列表中
  9. text_all=''.join(text_all)#把text_all的列表转化成字符串
  10. print(text_all)# 打印全部文本
  11. pdf.close()# 关闭Pdf文件

运行结果:

 

2、提取表格:extract_tables()解析表格

代码练习1:直接打印extract_tables()函数提取到的列表内容

  1. import pdfplumber
  2. pdf=pdfplumber.open('F:\\05pycharm\\20220227学习\\珈伟新能:珈伟新能源股份有限公司关于公司实际控制人签署《纾困投资协议》《表决权委托协议》暨控制权拟发生变更的提示性公告.PDF')#打开PDF文件
  3. pages=pdf.pages#pages属性获取所有页内容
  4. page=pages[2]#提取第三页,因为表格在第三页
  5. tables=page.extract_tables()#extract_tables()函数提取该页所有表格
  6. table=tables[0]#取第一个表格
  7. print(table)

运行结果:显示的试列表格式,需要进一步美化

通过整理分析:有1个大列表,里面嵌套了10个小列表

 

 代码练习2:把获取的表格内容用DataFrame展示

  1. import pdfplumber
  2. import pandas as pd
  3. pdf=pdfplumber.open('F:\\05pycharm\\20220227学习\\珈伟新能:珈伟新能源股份有限公司关于公司实际控制人签署《纾困投资协议》《表决权委托协议》暨控制权拟发生变更的提示性公告.PDF')#打开PDF文件
  4. pages=pdf.pages#pages属性获取所有页内容
  5. page=pages[2]#提取第三页,因为表格在第三页
  6. tables=page.extract_tables()#extract_tables()函数提取该页所有表格
  7. table=tables[0]#取第一个表格
  8. pd.set_option('display.max_columns',None)#把表格内容全部显示,默认显示部分
  9. df=pd.DataFrame(table[1:],columns=table[0])#table[1:]是表格第二行及以下内容,table[0]是表格第一行,及表头内容
  10. print(df)

运行结果:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/51432
推荐阅读
相关标签
  

闽ICP备14008679号