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

python獲取word文檔總頁數(shù)的兩種方法

 更新時(shí)間:2024年03月25日 11:43:33   作者:一縷82年的清風(fēng)  
這篇文章主要介紹了python獲取word文檔的總頁數(shù)的兩種方法,文中給出了兩種解決方案,兩種方案也都各有優(yōu)缺點(diǎn),可能也不一定是完全準(zhǔn)確的,需要的朋友可以參考下

最近在搞AI. 遇到了一個(gè)問題,就是要進(jìn)行doc文檔的解析。并且需要展示每個(gè)文檔的總頁數(shù)。

利用AI. 分別嘗試了chatGPT, 文心一言, github copilot,Kimi 等工具,給出來的答案都不盡如人意。

給的最多的查詢方式就是下面這種。

這個(gè)給大家避雷一下。使用python-docx的方式,是沒有辦法獲取文檔總頁數(shù)的。 如果想獲取,也只能是獲取一個(gè)近似值,大體就是根據(jù)每個(gè)頁面平均有多少個(gè)段落,或者平均有多少行的方式,近似的得到一個(gè)結(jié)果。完全是不準(zhǔn)確的。

那么如果想要獲取總頁數(shù),應(yīng)該怎么辦呢? 經(jīng)過一番調(diào)研這里給出兩種解決方案,兩種方案也都各有優(yōu)缺點(diǎn)。可能也不一定是完全準(zhǔn)確的,但是相比于上面的方式還是要好出很多。

一、使用langchain

langchain是什么,這里就不詳細(xì)介紹了,是AI領(lǐng)域當(dāng)前非常流行的一套框架。 langchain中提供了很多開箱即用的功能,比如文檔解析、文檔拆分, 向量比較、摘要提取等。 在文檔解析中,就有對(duì)于word文檔解析的方法,這在個(gè)方法中,我們可以間接獲取文檔頁數(shù)。

地址:https://www.langchain.com.cn/modules/indexes/document_loaders/examples/word_document

方法:

word_path = '/xxx/xxx.docx'
loader = UnstructuredWordDocumentLoader(word_path, mode="paged")
docs = loader.load_and_split(texts_splitter)
for doc in docs:
    print(doc)

這里的mode可以選擇paged,也可以使用elements 一個(gè)是按照頁進(jìn)行分割,一個(gè)是按照元素做分割。那么怎么獲取頁數(shù)呢,在返回的元素中,就可以找到page_number這樣一個(gè)字段。

所以無論我們使用paged還是使用elements,都可以從返回結(jié)果(集合)中通過獲取page_number的最大值,來得到該文檔的總頁數(shù)。

局限性: 這種方法也不是沒有任何缺點(diǎn),但是整理來說還是相對(duì)準(zhǔn)確的。確定就是有的時(shí)候,文檔明明是三頁。但是解析出來的結(jié)果可能是兩頁。 我出現(xiàn)過一次,主要是我自己做了測(cè)試,第二頁空白比較多的時(shí)候,又添加了第三頁。這個(gè)時(shí)候,第三頁的內(nèi)容出現(xiàn)在第二頁的解析結(jié)果中了。 導(dǎo)致最終識(shí)別的結(jié)果為2.

二、沒啥好辦法,word2pdf

的確,沒啥好的辦法了,只能先把word轉(zhuǎn)換為pdf, 然后獲取pdf的頁數(shù)。 pdf的頁數(shù)獲取還是很簡單的,很多pdf相關(guān)工具,都有這個(gè)功能,也就一行代碼的事。給一個(gè)例子吧:

from fitz import fitz

doc = fitz.open(pdf_path)
print(doc.page_count)

問題主要在于word如何轉(zhuǎn)為pdf, 我這里使用的是libreOffice. 不同的平臺(tái)有不同平臺(tái)的安裝包。 具體的使用,這里就不詳細(xì)介紹了。

局限性 主要局限性就是平臺(tái)限制, 比如我們的文檔通常是在windows上, 而部署平臺(tái)一般是在linux上,相當(dāng)于libreOffice要裝在linux上,這個(gè)時(shí)候,由于平臺(tái)不同,轉(zhuǎn)換出來的pdf頁數(shù)可能也會(huì)有一些差距,都一頁少一頁這類的。 有沒有好的方案呢。 兩種,一種是用windows系統(tǒng)做部署服務(wù)器。 一種是使用wps+docker desktop的方式。

兩種方式,都有點(diǎn)小缺陷, 但是誤差不大,可接受的就用這兩種方法把,接受不了的,可以按照給的思路,自己去折騰折騰。

到此這篇關(guān)于python獲取word文檔的總頁數(shù)的兩種方法的文章就介紹到這了,更多相關(guān)python獲取word文檔總頁數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python中Django文件上傳方法詳解

    python中Django文件上傳方法詳解

    在本篇文章里小編給大家整理了一篇關(guān)于python中Django文件上傳方法,有興趣的朋友們可以學(xué)習(xí)下。
    2020-08-08
  • python SQLAlchemy的Mapping與Declarative詳解

    python SQLAlchemy的Mapping與Declarative詳解

    這篇文章主要介紹了python SQLAlchemy的Mapping與Declarative詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • MacBook m1芯片采用miniforge安裝python3.9的方法示例

    MacBook m1芯片采用miniforge安裝python3.9的方法示例

    這篇文章主要介紹了MacBook m1芯片采用miniforge安裝python3.9的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Linux下將Python的Django項(xiàng)目部署到Apache服務(wù)器

    Linux下將Python的Django項(xiàng)目部署到Apache服務(wù)器

    這篇文章主要介紹了Python的Django項(xiàng)目部署到Apache服務(wù)器上的要點(diǎn)總結(jié),文中針對(duì)的是wsgi連接方式,需要的朋友可以參考下
    2015-12-12
  • python之glob的用法詳解

    python之glob的用法詳解

    glob?是?Python?中用于文件模式匹配的一個(gè)模塊,本文主要介紹了python之glob的用法詳解,具有一定的參考價(jià)值,感興趣的可以來了解一下
    2023-12-12
  • python 中 .py文件 轉(zhuǎn) .pyd文件的操作

    python 中 .py文件 轉(zhuǎn) .pyd文件的操作

    這篇文章主要介紹了python 中 .py文件 轉(zhuǎn) .pyd文件的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • python用正則表達(dá)式提取/匹配中文漢字

    python用正則表達(dá)式提取/匹配中文漢字

    在使用Python的過程中,由于需求原因,我們經(jīng)常需要在文本或者網(wǎng)頁元素中用Python正則表達(dá)式匹配中文,下面這篇文章主要給大家介紹了關(guān)于python用正則表達(dá)式提取/匹配中文漢字的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • Python真題案例之蛇形數(shù)組詳解

    Python真題案例之蛇形數(shù)組詳解

    這篇文章主要介紹了python實(shí)操案例練習(xí),本文給大家分享的案例中主要講解了蛇形數(shù)組,需要的小伙伴可以參考一下
    2022-03-03
  • Python正則表達(dá)式re模塊詳解(建議收藏!)

    Python正則表達(dá)式re模塊詳解(建議收藏!)

    正則表達(dá)式是用來匹配與查找字符串的,從網(wǎng)上爬取數(shù)據(jù)自然或多或少會(huì)用到正則表達(dá)式,python的正則表達(dá)式要先引入re模塊,這篇文章主要給大家介紹了關(guān)于Python正則表達(dá)式re模塊的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 利用pandas讀取中文數(shù)據(jù)集的方法

    利用pandas讀取中文數(shù)據(jù)集的方法

    今天小編就為大家分享一篇利用pandas讀取中文數(shù)據(jù)集的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07

最新評(píng)論