您好!欢迎来到爱源码

爱源码

热门搜索: 抖音快手短视频下载   

Python Sao操作,从pdf文件中提取表格数据! 《导航网站源码》

  • 时间:2022-09-09 11:04 编辑: 来源: 阅读:298
  • 扫一扫,手机访问
摘要:Python Sao操作,从pdf文件中提取表格数据! 《导航网站源码》
在实际研究中,我们经常需要获取大量的数据,而这些数据很大一部分是以pdf表格的形式呈现的,比如公司年报、发行上市报表等。 面对这么多数据表,手动复制粘贴显然是不可取的。 那么我们如何高效地从pdf文件中提取表格数据呢?Python提供了很多可以用于pdf表格识别的库,比如camelot、tabula、pdfplumber等。 总的来说,pdfplumber库的性能还是不错的,可以提取完整的、相对规范的表格。 所以这篇推文也主要详细介绍了pdfplumber库在pdf表格提取中的作用。 pdfplumber库作为分析pdf文件的强大工具,可以快速将pdf文档转换成易于求解的txt文档,并输出pdf文档的字符、页数、页码等信息,还可以进行页面可视化操作。 在使用pdfplumber库之前,需要进行安装,即进入:pip install pdfplumberpdfplumber库提供了两个pdf表格提取功能,分别是。extract_tables()和。extract_table(),两个函数的提取结果是不一样的。 为了进行演示,我们从网站下载了一份pdf格式的短期融资券主体信用评级报告。 选择任意表格,其界面如下:Python操作,从pdf文件中提取表格数据!关于如何快速学习python,可以加一个小的python学习群:611+530+101。不管你是小白还是大牛,我都欢迎小编。每晚20:00会有直播供你参考python学习知识和路线方法。集团会不定期升级最新的教程和学习方法。大家都在学python,或者转行,或者大学生,也有人想在工作中提升自己的能力。 最后,祝所有程序员都能登上人生巅峰,让代码梦想有可能实现。接下来,我们简单分析一下两种提取模式的区别。 (1).extract_tables()可以输出页面中的所有表格,返回一个嵌套列表,结构层次为表→行→单元格。 此时,页面上的整个表被放入一个大列表中,原始表中的行组成大列表中的每个子列表。 如果您需要输出一个外部列表元素,您将得到一个由原始表的同一行中的元素组成的列表。 比如我们执行以下程序:Python操作,从pdf文件中提取表格数据!输出:Python操作,从pdf文件中提取表格数据!(2).extract_table()返回多个独立的列表,结构层次为row→cell。 如果页面中有多个行数相同的表格,默认输出最上面的表格;否则,将只输出行数最多的表。 此时,表格的每一行都被视为一个单独的列表,列表中的每个元素都是原始表格中每个单元格的内容。 如果你需要输出一个元素,你会得到一个特定的数值或者字符串。 如下:Python Sao操作,从pdf文件中提取表格数据!输出:Python操作,从pdf文件中提取表格数据!在此基础上,我们详细介绍了如何从pdf文件中提取表格数据。 一种思路是把提取出来的列表当作一个字符串,用Python的正则表达式re模块求解字符串,保存为标准英文逗号分隔的、Excel可识别的csv文件,即进行如下操作:Python操作,从pdf文件中提取表格数据!输出:Python操作,从pdf文件中提取表格数据!虽然可以得到完整的表格数据,但是这种方法相对来说比较难理解,在求解不规则表格时容易出错。 因为pdfplumber库提取的表格数据是整齐的列表结构,包含数字、字符串等数据类型。 所以我们可以调用熊猫库中的DataFrame()函数,将列表转换成可以直接输出到Excel的DataFrame数据结构。 DataFrame的基本构造函数如下:DataFrame的三个参数([data,index,columns]) data、index和columns分别代表创建对象、行索引和列索引。 数据帧类型可以由二维数组对象、列表、字典、元组等创建。 这条推文中的数据是指整个pdf表单,提取过程如下:Python操作,从pdf文件中提取表单数据!其中table[1:]表示选择整个表来创建DataFrame对象,columns=table[0]表示将表的第一行中的元素用作列变量名,不创建行索引。 Excel输出表格如下:Python操作,从pdf文件中提取表格数据!通过以上简单的程序,我们提取了一个完整的pdf表单。 但需要注意的是,面对不规则的表格数据抽取,创建DataFrame对象的方法仍有可能出错,需要在实际操作中进行检查。


  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【技术支持|常见问题】1556原创ng8文章搜索页面不齐(2024-05-01 14:43)
【技术支持|常见问题】1502企业站群-多域名跳转-多模板切换(2024-04-09 12:19)
【技术支持|常见问题】1126完美滑屏版视频只能显示10个(2024-03-29 13:37)
【技术支持|常见问题】响应式自适应代码(2024-03-24 14:23)
【技术支持|常见问题】1126完美滑屏版百度未授权使用地图api怎么办(2024-03-15 07:21)
【技术支持|常见问题】如何集成阿里通信短信接口(2024-02-19 21:48)
【技术支持|常见问题】算命网微信支付宝产品名称年份在哪修改?风水姻缘合婚配对_公司起名占卜八字算命算财运查吉凶源码(2024-01-07 12:27)
【域名/主机/服务器|】帝国CMS安装(2023-08-20 11:31)
【技术支持|常见问题】通过HTTPs测试Mozilla DNS {免费源码}(2022-11-04 10:37)
【技术支持|常见问题】别告诉我你没看过邰方这两则有思想的创意广告! (2022-11-04 10:37)

联系我们
Q Q:375457086
Q Q:526665408
电话:0755-84666665
微信:15999668636
联系客服
企业客服1 企业客服2 联系客服
86-755-84666665
手机版
手机版
扫一扫进手机版
返回顶部