Python PDF摘图片
IDE:pycharm
先安装需要的开发包
Pymupdf



安装Fitz

编写代码,引入模块
IDE有自动检查功能,
1:如果引入模块是灰色,说明该模块的方法未被调用
2:如果引入模块带红色下划线,说明该模块是名字错误 或者 未安装,编译器找不到
3:如果引入模块是亮色,说明正常使用 (如下图)
首先打开(加载)PDF文件到项目中,先用简单的功能测试PDF的页数和实际是否相同
file = "V253.pdf" p_pages = fitz.open(file) pdf_len = len(p_pages) print("这个PDF有%d页" % pdf_len)

导入图片处理的包IPL
Pillow-pil

文件io 直接import
# -- coding: utf-8 -- import fitz from PIL import Image import io file = "V253.pdf" p_pages = fitz.open(file) pdf_len = len(p_pages) print("这个PDF有%d页" % pdf_len) for i in range(0, pdf_len): page = p_pages[i] image_list = page.getImageList() pic_num = len(image_list) print("第%d页pdf中有%d张图片" % (i+1, pic_num)) pic_index = 0 if pic_num > 0: for img in image_list: hg = img[0] b_image = p_pages.extractImage(hg) image_b = b_image["image"] pic = Image.open(io.BytesIO(image_b)) pic_index += 1 pic_name = file[:-4] + "的第%d页第%d张.png" % (i+1, pic_index) pic.save(open(pic_name, "wb"))
执行结果


不许人间见白头

浙公网安备 33010602011771号