1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Python-Camelot:用三行代碼提取PDF表格數(shù)據(jù)

        共 1594字,需瀏覽 4分鐘

         ·

        2022-02-28 05:26

        來源 : 機(jī)器之心
        從 PDF 表格中獲取數(shù)據(jù)是一項痛苦的工作。不久前,一位開發(fā)者提供了一個名為 Camelot 的工具,使用三行代碼就能從 PDF 文件中提取表格數(shù)據(jù)。

        ↑?關(guān)注 + 星標(biāo)?,每天學(xué)Python新技能

        后臺回復(fù)【大禮包】送你Python自學(xué)大禮包

        PDF 文件是一種非常常用的文件格式,通常用于正式的電子版文件。它能夠很好的將不同的排版格式固定下來,形成版面清晰且美觀的展示效果。然而,對于想要從 PDF 中提取信息的人們來說,PDF 是個噩夢,尤其是表格。

        大量的學(xué)術(shù)報告、論文、分析文章都使用 PDF 展示其中的表格數(shù)據(jù),但是對于如果想要直接從表格中復(fù)制數(shù)據(jù)則會非常麻煩。不久前,有一位開發(fā)者提供了一個可從文字 PDF 中提取表格信息的工具——Camelot,能夠直接將大部分表格轉(zhuǎn)換為 Pandas 的 Dataframe。

        • 項目地址:https://github.com/camelot-dev/camelot

        Camelot 是什么

        據(jù)項目介紹稱,Camelot 是一個 Python 工具,用于將 PDF 文件中的表格數(shù)據(jù)提取出來。

        具體而言,用戶可以像使用 Pandas 那樣打開 PDF 文件,然后利用這個工具提取表格數(shù)據(jù),最后再指定輸出的形式(如 csv 文件)。

        代碼示例

        項目提供的 PDF 文件如圖所示,假設(shè)用戶需要提取這些文字之間的表格 2-1 中的信息。

        PDF 文件,我們需要提取表格 2-1

        使用 Camelot 提取表格數(shù)據(jù)的代碼如下:

        >>>?import?camelot
        >>>?tables?=?camelot.read_pdf('foo.pdf')?#類似于Pandas打開CSV文件的形式
        >>>?tables[0].df?#?get?a?pandas?DataFrame!
        >>>?tables.export('foo.csv',?f='csv',?compress=True)?#?json,?excel,?html,?sqlite,可指定輸出格式
        >>>?tables[0].to_csv('foo.csv')?#?to_json,?to_excel,?to_html,?to_sqlite,?導(dǎo)出數(shù)據(jù)為文件
        >>>?tables
        1>
        >>>?tables[0]
        7,?7)>?#?獲得輸出的格式
        >>>?tables[0].parsing_report
        {
        ????'accuracy':?99.02,
        ????'whitespace':?12.24,
        ????'order':?1,
        ????'page':?1
        }

        以下為輸出的結(jié)果,對于合并的單元格,Camelot 在抽取后做了空行處理,這是一個穩(wěn)妥的方法。

        安裝方法

        項目作者提供了三種安裝方法。首先,你可以使用 Conda 進(jìn)行安裝,這是最簡單的。

        conda?install?-c?conda-forge?camelot-py

        最流行的安裝方法是使用 pip 安裝。

        pip?install?camelot-py[cv]

        還可以從項目中克隆代碼,并使用源碼安裝。

        git?clone?https://www.github.com/camelot-dev/camelot
        cd?camelot
        pip?install?".[cv]"


        - EOF -


        推薦閱讀

        1. 消息稱騰訊微信試行“1065”工作制,晚 18 點強(qiáng)制下班?

        2. 爬取網(wǎng)站內(nèi)容,合并Excel數(shù)據(jù)…推薦一個自動化辦公神器!

        3. 分享一個我最近用的國產(chǎn)神器, ApiPost!

        4. 來了,最強(qiáng) Python 學(xué)習(xí)資料(全彩打?。?/a>


        您看此文用???分??秒,轉(zhuǎn)發(fā)只需1秒哦~

        瀏覽 26
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            成人a电影 | 伊伊人成亚洲综合人网7777 | 免费啪啪网站 | 特级西西WWW444人体聚色 | 日本中文字幕在线视频 | 亚洲人成色777777精品音频 | 亚洲色俺来也 | 嗯嗯网站 | 亚洲丝袜中文字幕 | 国产精品毛片一区视频播不卡 |