Python自动化办公之PDF版本发票识别并提取关键信息实战教程(上篇)
大家好,我是皮皮。
一、前言
前几天在Python白银交流群【上海新年人】问了一个Python自动化办公
发票数据处理的问题,一起来看看吧。
二、实现过程
这个问题在实际工作中还是非常常见的,实用性和通用性都比较强,历史文章中其实也有写过几篇文章,这里继续给大家敲敲脑壳。
不过这里还涉及到一个场景,其实这个数据来源是pdf发票识别,然后存为Excel的,所以看上去格式还比较乱。
就是pdf里面有中括号,你提取来之后就把中括号带出来了,然后希望把中括号去掉,并且每列的每行都分成两列。
粉丝自己写了一个代码和正则表达式,但是出来的结果不尽人意,想在群里寻求大佬们的帮助。这里【甯同学】给了一个思路和代码,如下所示:
看上去确实可以得到正确的结果:
这个'\xa5' 的意思就是一个文字编码的问题,计算机本身不识别输入的东西需要先把它们翻译成计算机可以识别的。这里的结果看上去数据是一行,粉丝要的是里面几个数字,可以试试看转列表,然后索引取:
不过粉丝还补充了下面的这个情况,然后【甯同学】继续给出了对应的思路:
下一篇文章我们一起来看具体的代码,敬请期待!
三、总结
大家好,我是皮皮。这篇文章主要盘点了一个Python自动化办公
发票数据处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。
最后感谢粉丝【上海新年人】提问,感谢【论草莓如何成为冻干莓】、【甯同学】、【瑜亮老师】、【FANG.J】、【袁学东】给出的思路和代码解析,感谢【顾德猫宁】、【Day_dreamer】等人参与学习交流。
【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。