用法选择PDF文件所在的目录点击 确定 后自动将该目录下的所有PDF转换成单个图片图片名称为: pdf文件名.page_序号.jpg如运行中报错需要自行根据报错内容按照缺失的库例如1234#安装库pipinstallpyautogui#安装库pipinstallpillow这里提供两种源码第一种是在代码中手动添加pdf所在目录123456789101112131415161718192021222324252627282930importosimportglobfromPyPDF2importPdfReaderfrompdf2imageimportconvert_from_pathpdf_dirpath/to/pdf_dir/#pdf目录# 遍历目录中的PDF文件pdf_filesglob.glob(os.path.join(pdf_dir,*.pdf))# 遍历每个PDF文件并将其转换为图片forpdf_fileinpdf_files:# 创建PdfReader对象pdfopen(pdf_file,rb)pdf_readerPdfReader(pdf)# 遍历PDF的页面并将其转换为图片forpage_numinrange(len(pdf_reader.pages)):# 获取页面对象pagepdf_reader.pages[page_num]# 将PDF页面转换为图像imagesconvert_from_path(pdf_file, first_pagepage_num1, last_pagepage_num1)# 定义图像保存路径filenameos.path.splitext(os.path.basename(pdf_file))[0]image_pathos.path.join(pdf_dir, f{filename}_page_{page_num1}.jpg)# 保存图像fori, imageinenumerate(images):ifi0:image.save(image_path,JPEG)else:image_pathos.path.join(pdf_dir, f{filename}_page_{page_num1}_{i1}.jpg)image.save(image_path,JPEG)# 关闭PDF文件pdf.close()第二种是点击运行后弹出窗口选择PDF所在文件夹程序运行对该文件夹下的所有PDF文件转换成图片1234567891011121314151617181920212223242526272829303132333435#手动选择目录下的pdf文件importosfromtkinterimportTkfromtkinter.filedialogimportaskdirectoryfromPyPDF2importPdfReaderfrompdf2imageimportconvert_from_path# 打开选择目录的对话框Tk().withdraw()# 隐藏Tkinter根窗口pdf_diraskdirectory(title选择PDF所在目录)# 遍历目录中的PDF文件pdf_files[fforfinos.listdir(pdf_dir)iff.endswith(.pdf)]# 遍历每个PDF文件并将其转换为图片forpdf_fileinpdf_files:# 创建PdfReader对象pdf_pathos.path.join(pdf_dir, pdf_file)pdfopen(pdf_path,rb)pdf_readerPdfReader(pdf)# 遍历PDF的页面并将其转换为图片forpage_numinrange(len(pdf_reader.pages)):# 获取页面对象pagepdf_reader.pages[page_num]# 将PDF页面转换为图像imagesconvert_from_path(pdf_path, first_pagepage_num1, last_pagepage_num1)# 定义图像保存路径filenameos.path.splitext(pdf_file)[0]image_pathos.path.join(pdf_dir, f{filename}_page_{page_num1}.jpg)# 保存图像fori, imageinenumerate(images):ifi0:image.save(image_path,JPEG)else:image_pathos.path.join(pdf_dir, f{filename}_page_{page_num1}_{i1}.jpg)image.save(image_path,JPEG)# 关闭PDF文件pdf.close()到此这篇关于python批量将PDF文件转换成图片的实现代码的文章就介绍到这了