必须在Linux环境下,使用到的环境和工具:CentOS7+Python3.6+pdf2image+poppler

首先要在系统中安装poppler,这是一个用于呈现可移植文档格式(PDF)文档的免费软件实用程序库

一、安装poppler

直接用下面的命令进行安装:

yuminstallpopplerpoppler-cpp-develpoppler-utils

注意:在这里如果没有安装“poppler-utils”就会出现如下所示的错误:

Exception: Unable to get page count. Is poppler installed and in PATH?

二、安装pdf2image

直接用下面的命令进行安装

pipinstallpdf2image

三、书写脚本

安装完成之后,将以下内容写为python脚本,并将需要转换的pdf文件更名为“source.pdf”,放到同一目录下即可,并在同级目录下创建“pdfimage”文件夹用于保存生成的图片

frompdf2imageimportconvert_from_pathimporttempfiledefmain(filename,outputDir):print('filename=',filename)print('outputDir=',outputDir)withtempfile.TemporaryDirectory()aspath:images=convert_from_path(filename)forindex,imginenumerate(images):img.save('%s/page_%s.png'%(outputDir,index))if__name__=="__main__":main('source.pdf','pdfimage/')

上边代码中的这两个个函数的详细使用方法如下:

convert_from_path(pdf_path,dpi=200,output_folder=None,first_page=None,last_page=None,fmt='ppm')convert_from_bytes(pdf_file,dpi=200,output_folder=None,first_page=None,last_page=None,fmt='ppm')

其中:

thread_count:允许设置用于转换的线程数;first_page:允许设置由pdftoppm处理的第一个页面;last_page:允许设置最后一页由pdftoppm处理;fmt:允许指定输出格式。目前支持的格式是jpg、png和ppm;