欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python批量將PDF文件轉(zhuǎn)換成圖片的實現(xiàn)代碼

 更新時間:2023年08月25日 08:52:25   作者:谷雨之際  
這篇文章使用python編寫了一個小腳本,目的是為了實現(xiàn)批量將PDF文件轉(zhuǎn)換成圖片,文中有詳細的實現(xiàn)代碼,對我們的學習或工作有一定的幫助,感興趣的小伙伴可以參考閱讀一下

語言:python 3

用法:選擇PDF文件所在的目錄,點擊 確定 后,自動將該目錄下的所有PDF轉(zhuǎn)換成單個圖片,圖片名稱為:   pdf文件名.page_序號.jpg

如運行中報錯,需要自行根據(jù)報錯內(nèi)容按照缺失的庫

例如:

#安裝庫
pip install pyautogui
#安裝庫
pip install  pillow

這里提供兩種源碼,第一種是在代碼中手動添加pdf所在目錄

import os
import glob
from PyPDF2 import PdfReader
from pdf2image import convert_from_path
pdf_dir = "path/to/pdf_dir/"  #pdf目錄
# 遍歷目錄中的PDF文件
pdf_files = glob.glob(os.path.join(pdf_dir, "*.pdf"))
# 遍歷每個PDF文件,并將其轉(zhuǎn)換為圖片
for pdf_file in pdf_files:
    # 創(chuàng)建PdfReader對象
    pdf = open(pdf_file, 'rb')
    pdf_reader = PdfReader(pdf)
    # 遍歷PDF的頁面并將其轉(zhuǎn)換為圖片
    for page_num in range(len(pdf_reader.pages)):
        # 獲取頁面對象
        page = pdf_reader.pages[page_num]
        # 將PDF頁面轉(zhuǎn)換為圖像
        images = convert_from_path(pdf_file, first_page=page_num+1, last_page=page_num+1)
        # 定義圖像保存路徑
        filename = os.path.splitext(os.path.basename(pdf_file))[0]
        image_path = os.path.join(pdf_dir, f"{filename}_page_{page_num+1}.jpg")
        # 保存圖像
        for i, image in enumerate(images):
            if i == 0:
                image.save(image_path, "JPEG")
            else:
                image_path = os.path.join(pdf_dir, f"{filename}_page_{page_num+1}_{i+1}.jpg")
                image.save(image_path, "JPEG")
    # 關(guān)閉PDF文件
    pdf.close()

第二種是點擊運行后,彈出窗口選擇PDF所在文件夾,程序運行對該文件夾下的所有PDF文件轉(zhuǎn)換成圖片

#手動選擇目錄下的pdf文件
import os
from tkinter import Tk
from tkinter.filedialog import askdirectory
from PyPDF2 import PdfReader
from pdf2image import convert_from_path
# 打開選擇目錄的對話框
Tk().withdraw()  # 隱藏Tkinter根窗口
pdf_dir = askdirectory(title="選擇PDF所在目錄")
# 遍歷目錄中的PDF文件
pdf_files = [f for f in os.listdir(pdf_dir) if f.endswith(".pdf")]
# 遍歷每個PDF文件,并將其轉(zhuǎn)換為圖片
for pdf_file in pdf_files:
    # 創(chuàng)建PdfReader對象
    pdf_path = os.path.join(pdf_dir, pdf_file)
    pdf = open(pdf_path, 'rb')
    pdf_reader = PdfReader(pdf)
    # 遍歷PDF的頁面并將其轉(zhuǎn)換為圖片
    for page_num in range(len(pdf_reader.pages)):
        # 獲取頁面對象
        page = pdf_reader.pages[page_num]
        # 將PDF頁面轉(zhuǎn)換為圖像
        images = convert_from_path(pdf_path, first_page=page_num+1, last_page=page_num+1)
        # 定義圖像保存路徑
        filename = os.path.splitext(pdf_file)[0]
        image_path = os.path.join(pdf_dir, f"{filename}_page_{page_num+1}.jpg")
        # 保存圖像
        for i, image in enumerate(images):
            if i == 0:
                image.save(image_path, "JPEG")
            else:
                image_path = os.path.join(pdf_dir, f"{filename}_page_{page_num+1}_{i+1}.jpg")
                image.save(image_path, "JPEG")
    # 關(guān)閉PDF文件
    pdf.close()

到此這篇關(guān)于python批量將PDF文件轉(zhuǎn)換成圖片的實現(xiàn)代碼的文章就介紹到這了,更多相關(guān)python將PDF文件轉(zhuǎn)換成圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論