Python提取PDF中得圖片得實現(xiàn)示例

目錄

1.導入相關庫

import fitzimport timeimport reimport os

2.具體實現(xiàn)

為了方便和其他模塊組合,我直接寫了個函數(shù)完成這個功能,實現(xiàn)如下:

2.1.使用正則表達式查找PDF中得圖片

def pdf2pic(path, pic_path):    '''    # 從pdf中提取圖片    :param path: pdf得路徑    :param pic_path: 圖片保存得路徑    :return:    '''    t0 = time.clock()    # 使用正則表達式來查找圖片    checkXO = r"/Type(?= */XObject)"     checkIM = r"/Subtype(?= */Image)"  

2.2.打印PDF得相關信息

    # 打開pdf    doc = fitz.open(path)    # 圖片計數(shù)    imgcount = 0    lenXREF = doc._getXrefLength()     # 打印PDF得信息    print("文件名:{}, 頁數(shù): {}, 對象: {}".format(path, len(doc), lenXREF - 1))

2.3.遍歷PDF中得對象,遇到是圖像才進行下一步,不然就continue

并且我們將文件得名字命名為word所在得路徑

    # 遍歷每一個對象    for i in range(1, lenXREF):        # 定義對象字符串        text = doc.getObjectString(i)        isXObject = re.search(checkXO, text)        # 使用正則表達式查看是否是圖片        isImage = re.search(checkIM, text)        # 如果不是對象也不是圖片,則continue        if not isXObject or not isImage:            continue        imgcount += 1        # 根據(jù)索引生成圖像        pix = fitz.Pixmap(doc, i)        # 根據(jù)pdf得路徑生成圖片得名稱        new_name = path.replace('\', '_') + "_img{}.png".format(imgcount)        new_name = new_name.replace(':', '')

2.4.將圖像存為png格式

        # 如果pix.n<5,可以直接存為PNG        if pix.n < 5:            pix.writePNG(os.path.join(pic_path, new_name))        # 否則先轉換CMYK        else:            pix0 = fitz.Pixmap(fitz.csRGB, pix)            pix0.writePNG(os.path.join(pic_path, new_name))            pix0 = None        # 釋放資源        pix = None        t1 = time.clock()        print("運行時間:{}s".format(t1 - t0))        print("提取了{}張圖片".format(imgcount))

2.5.輸入pdf路徑,即可運行

if __name__=='__main__':    # pdf路徑    path = r'E:dogcat提取圖片計算機視覺算法工程師.pdf'    pic_path = r'E:dogcat提取圖片測試'    # 創(chuàng)建保存圖片得文件夾    if os.path.exists(pic_path):        print("文件夾已存在,請重新創(chuàng)建新文件夾!")        raise SystemExit    else:        os.mkdir(pic_path)    m = pdf2pic(path, pic_path)

3.結果預覽

3.1.程序結果

3.2.原本得pdf

3.3.提取出來得圖片

到此這篇關于Python提取PDF中得圖片得實現(xiàn)示例得內容就介紹到這了,更多相關Python提取PDF圖片內容請搜索之家以前得內容或繼續(xù)瀏覽下面得相關內容希望大家以后多多支持之家!

聲明:所有內容來自互聯(lián)網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯(lián)系我們進行處理。
發(fā)表評論
更多 網友評論1 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 成人免费观看高清在线毛片| 花蝴蝶直播苹果版| 一本大道香蕉在线观看| ririai66视频在线播放| 日本高清www无色夜在| 精品人人妻人人澡人人爽人人 | 红杏出墙电影在线观看| 日本免费一本天堂在线| 国产人成精品香港三级古代| 亚洲精品成a人在线观看| Aⅴ精品无码无卡在线观看| 蜜臀亚洲AV无码精品国产午夜. | 欧产日产国产精品| 天天摸天天操免费播放小视频 | 无码人妻丰满熟妇区毛片| 国产精品黄页免费高清在线观看 | 亚洲最大成人网色| 99riav国产在线观看| 欧美激情第1页| 成人午夜免费福利视频| 台湾香港澳门三级在线| 久久综合狠狠综合久久综合88| 欧美日韩一区二区三区四区在线观看| 日韩高清在线播放| 国产精品玩偶在线观看| 免费a级毛片高清在钱| www.狠狠干| 欧美黑人巨大videos极品| 国产裸拍裸体视频在线观看| 国产性感美女在线观看| 久久国产精品久久国产精品| 色噜噜视频影院| 日本黄网站动漫视频免费| 国产精品国产三级国产a| 又大又粗又爽a级毛片免费看| xxxx日本性| 激情吃奶吻胸免费视频xxxx| 少妇被又大又粗又爽毛片久久黑人| 伊人色院成人蜜桃视频| 一级毛片在线播放免费| 狠狠色噜噜狠狠狠合久|