不知道大家是否和我一样,工作之余、闲暇时间一直在网上搜集一些学习资料,这就包括很多优秀的PDF文档。广州中软卓越Java培训课程小编觉得PDF格式总是不太方便,浏览时需要去找到这个文件,如果是在手机上的话往往还需要下载PDF相关的插件才行,而且最大的问题是不便于资料的整理和分享。如果能够将PDF转换成网页,岂不是就能解决这些问题了?还能直接分享出去,与大家一同进步。
今天我们简单聊一下利用PyPDF包来处理PDF文件。为了方便快捷,这里直接将一个页面转换成图片,就不需要去识别页面中的每一个PDF元素了,这是没必要的。
1、转换
核心代码很简单,就是将PDF文件读取出来,转换成PdfFileReader,然后就可以根据PyPDF2的API去获得每一个页面的二进制数据,拿到二进制数据过后,就能很方便的进行图片处理了,这里用wand包来进行图片处理。
需要注意的是一般PDF文件较大,如果一次性转换整个PDF文件需要小心内存溢出的问题。这里将第一次载入的整个PDF文件保存到内存,避免每次读取的时候都重新载入。
2、批量处理
上面已经完成了一个PDF页面的转换,要完成整个文件的转换就很简单了,只需要拿到文件的总页码,然后循环执行就行。考虑到转换比较耗时,可以使用异步处理的方式加快速度。比如可以使用celery来搭配处理,一定注意小心内存泄露。
去企业,学习企业需要的编程技能!广州中软卓越Java培训,真实企业背景,送你企业入场券!
网友评论