最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

9行Python3代碼實現(xiàn)批量提取PDF文件的指定內(nèi)容

 更新時間:2022年12月09日 08:39:11   作者:Carl_奕然  
這篇文章主要為大家詳細(xì)介紹了如何通過9行Python3代碼實現(xiàn)批量提取PDF文件的指定內(nèi)容,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下

1、引言

小絲:魚哥, 你有沒有什么辦法,提取PDF文檔的內(nèi)容。

小魚:這個還問我??

小絲:哎呀,這個不是被難住了嘛 。

小魚:有啥難得?提示你一下,

小絲:嗯,可以可以。

小魚:去我的博文找,沒記錯的話,有兩種方法提取pdf的文字。

小絲:好嘞, 我這就去…找找…

小絲:魚哥,魚哥~

小魚:怎么樣,你的這個需求,解決了吧。

小絲:沒呢,我想批量提取指定PDF文檔的內(nèi)容…

小魚:批…量…

小絲:對啊,是批量,

小魚:這…還挺…

小絲:挺費(fèi)勁嗎?

小魚:挺好的 ,不費(fèi)勁, 一口氣,上7樓…

小絲:打住… 說正事! !

小魚:好嘞…

想到提取PDF文件的內(nèi)容,我們第一反應(yīng)就是pypdf,

因為pypdf這個庫我在很多篇文章都介紹過, 還蠻好用的。

但是,今天,我們不使用pypdf,而是使用另一個庫,即:pdfminer。

2、代碼實戰(zhàn)

2.1 介紹

pdfminer我相信很多同學(xué)都沒聽說過,除非,你經(jīng)常提取/解析PDF文件的內(nèi)容,否則,你對ta,只能是陌生。

其實,提取PDF文件內(nèi)容解決方案,截止到現(xiàn)在, 只有pypdf 和pdfminer這兩種。
所以, 如果你厭倦了, pypdf,那只能選擇pdfminer了。

那什么是pdfminer 呢,或者 pdfminer有什么神奇之處呢?

定義

PDFMiner是用于從PDF文檔提取信息的工具;

與其他PDF相關(guān)工具不同,它完全專注于獲取和分析文本數(shù)據(jù);

功能

PDFMiner允許獲取頁面中文本的確切位置以及其他信息,例如字體或線條;

它包括一個PDF轉(zhuǎn)換器,可以將PDF文件轉(zhuǎn)換為其他文本格式(例如HTML);

2.2 安裝

由于pdfminer是python 的第三方庫, 所以,需要安裝,

老規(guī)矩, 直接pip 安裝

安裝

pip install pdfminer

安裝完成:

因為我們需要用到 pdfminer的high_level 方法,所以

這里必須要在安裝pdfminer.six模塊,否則會報錯:

安裝

pip install pdfminer.six

安裝完成:

其它安裝方式,直接看這兩篇:

《Python3,選擇Python自動安裝第三方庫,從此跟pip說拜拜??!》

《Python3:我低調(diào)的只用一行代碼,就導(dǎo)入Python所有庫!》

2.3 實例

安裝完成,我們就來寫上代碼,

我們先來捋順一下思路,主要分3步:

1、遍歷pdf文件

注:如果文件夾的文件多個,需要單獨(dú)提取目標(biāo)pdf文件,否則都會輪巡匹配,費(fèi)事費(fèi)力費(fèi)資源;

2、提取pdf文檔內(nèi)容

3、根據(jù)正則匹配,提取需要的文檔信息

我們就根據(jù)這個思路,來提取"企業(yè)基本情況",代碼如下:

代碼示例

# -*- coding:utf-8 -*-
# @Time   : 2022-11-30
# @Author : Carl_DJ


from pdfminer import high_level
import re,os

#pdf文件路徑
#root:文件夾路徑,dirs:文件夾下子目錄名,files:文件夾下的文件
for root,dirs,files in os.walk('./data/'):
    #遍歷pdf文件
    for f in files:
        file_name = os.path.join(root,f)
        if file_name.endswith('.pdf'):
            #提取整個 pdf 文本信息
            text = high_level.extract_text(file_name)
            #提取 pdf文檔中 "企業(yè)進(jìn)本情況:" 后面的信息,利用正則進(jìn)行匹配
            regex = r'企業(yè)基本情況-(.*?)\n'
            qy_base = re.findall(regex,text)
            print(f'輸出信息:{qy_base}')

pdf文件

運(yùn)行結(jié)果

3、總結(jié)

看到這里,今天的分享,差不多就該結(jié)束了。

解析PDF是一件非常耗時和耗內(nèi)存的工作,因此,pdfminer使用一種稱作Lazy Parsing的策略,減少內(nèi)耗…

小絲:怪不得, 提到批量提取pdf的文檔內(nèi)容, 你會猶豫了…

小魚:對啊,因為我們的的測試文檔內(nèi)容很少,所以對內(nèi)存的消耗相對來說沒那么驗證,當(dāng)PDF文檔的內(nèi)容很多時, 就不得不使用pdfminer了。

到此這篇關(guān)于9行Python3代碼實現(xiàn)批量提取PDF文件的指定內(nèi)容的文章就介紹到這了,更多相關(guān)Python提取PDF指定內(nèi)容內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python迭代用法實例教程

    Python迭代用法實例教程

    這篇文章主要介紹了Python迭代用法,包括了迭代的定義及具體用法,是一個非常實用的技巧,需要的朋友可以參考下
    2014-09-09
  • Python基于Tkinter開發(fā)一個爬取B站直播彈幕的工具

    Python基于Tkinter開發(fā)一個爬取B站直播彈幕的工具

    這篇文章主要介紹了Python Tkinter如何開發(fā)一個爬取B站直播彈幕的工具,幫助大家更好的利用python進(jìn)行圖形界面的開發(fā)學(xué)習(xí),感興趣的朋友可以了解下
    2021-05-05
  • python實現(xiàn)將文件名批量命名為四位數(shù)or五位數(shù)

    python實現(xiàn)將文件名批量命名為四位數(shù)or五位數(shù)

    這篇文章主要介紹了python實現(xiàn)將文件名批量命名為四位數(shù)or五位數(shù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python爬蟲之Appium爬取手機(jī)App數(shù)據(jù)及模擬用戶手勢

    python爬蟲之Appium爬取手機(jī)App數(shù)據(jù)及模擬用戶手勢

    這篇文章主要介紹了python爬蟲怎樣通過Appium爬取手機(jī)App數(shù)據(jù)及模擬用戶手勢,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • Python?字符串使用多個分隔符分割成列表的2種方法

    Python?字符串使用多個分隔符分割成列表的2種方法

    本文主要介紹了Python?字符串使用多個分隔符分割成列表,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Anaconda中安裝Tensorflow的過程

    Anaconda中安裝Tensorflow的過程

    這篇文章主要介紹了Anaconda中如何安裝Tensorflow,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • QT5 Designer 打不開的問題及解決方法

    QT5 Designer 打不開的問題及解決方法

    這篇文章主要介紹了QT5 Designer 打不開的問題及解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Python中的引用知識點(diǎn)總結(jié)

    Python中的引用知識點(diǎn)總結(jié)

    在本文里我們給大家整理了關(guān)于Python中的引用知識點(diǎn)以及相關(guān)代碼總結(jié),需要的朋友們跟著學(xué)習(xí)下。
    2019-05-05
  • Python獲取svn版本信息

    Python獲取svn版本信息

    本文主要介紹了Python獲取svn版本信息,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • pip版本低引發(fā)的python離線包安裝失敗的問題

    pip版本低引發(fā)的python離線包安裝失敗的問題

    這篇文章主要介紹了pip版本低引發(fā)的python離線包安裝失敗的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09

最新評論

娱乐| 思南县| 团风县| 德州市| 馆陶县| 泸溪县| 顺平县| 禹城市| 河池市| 巧家县| 玛沁县| 伊宁市| 青冈县| 北海市| 炉霍县| 保山市| 资溪县| 西丰县| 皋兰县| 德化县| 浦东新区| 开鲁县| 吉林省| 十堰市| 东至县| 中超| 来宾市| 灵石县| 垫江县| 建平县| 武宣县| 河间市| 双流县| 察隅县| 潮安县| 永昌县| 保亭| 临江市| 合川市| 孟连| 利津县|