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

基于python+pandoc實(shí)現(xiàn)html批量轉(zhuǎn)word

 更新時(shí)間:2023年09月07日 10:44:55   作者:IceFloe_Rot  
pandoc是一個(gè)強(qiáng)大的文檔格式轉(zhuǎn)換工具,支持豐富的格式轉(zhuǎn)換,并盡可能的保留原來的排版,號(hào)稱文檔格式轉(zhuǎn)換的瑞士軍刀,本文將給大家介紹一下使用python搭配pandoc實(shí)現(xiàn)html批量轉(zhuǎn)word,感興趣的朋友可以參考閱讀下

使用python搭配pandoc實(shí)現(xiàn)html批量轉(zhuǎn)word

好兄弟工作上有一批(5000+)html的文檔需要轉(zhuǎn)成word格式,他采用了兩種實(shí)現(xiàn)方式,但都有些問題:

  • 直接改后綴有些會(huì)亂碼 --> 有些會(huì)亂碼,原因不知
  • 一個(gè)一個(gè)復(fù)制粘貼 --> 太費(fèi)時(shí)間

找到我來幫忙,研究了下發(fā)現(xiàn)了pandoc這個(gè)神器,記錄下實(shí)現(xiàn)的過程和踩的坑

pandoc簡(jiǎn)介

pandoc是一個(gè)強(qiáng)大的文檔格式轉(zhuǎn)換工具,支持豐富的格式轉(zhuǎn)換,并盡可能的保留原來的排版,號(hào)稱文檔格式轉(zhuǎn)換的瑞士軍刀

體支持哪些格式轉(zhuǎn)換可以查看官方文檔(網(wǎng)頁打開比較慢…):Pandoc - index

需要說明的是,pandoc要下載并安裝到本地才可以使用,windows下是一個(gè)msi的安裝包(mac版沒試),安裝之后會(huì)自動(dòng)添加路徑到環(huán)境變量里,可以直接使用cmd執(zhí)行程序

使用cmd進(jìn)行文檔格式轉(zhuǎn)換

一開始我是直接使用cmd指令進(jìn)行格式轉(zhuǎn)換,使用到的指令如下:

pandoc abc.html -o abc.docx

本地測(cè)試了一下可以正常轉(zhuǎn)換,然后我就想寫一個(gè)bat腳本批量執(zhí)行,但是發(fā)現(xiàn)cmd指令讀不出來中文文件名,即使改了cmd的編碼為UTF-8也不行,查了好多資料都沒找到解決方法,只好作罷,如果有大佬知道怎么讀取中文文件名的還請(qǐng)不吝賜教

使用python搭配pandoc

沒法使用bat腳本進(jìn)行轉(zhuǎn)換,又查了些資料,改為使用python中的os.system來代替執(zhí)行cmd指令,具體代碼如下:

注意:前提是必須要安裝pandoc到系統(tǒng)

import os
def transfer_file(file_dir):
    count = 1
    for root, dirs, files in os.walk(file_dir):  # 獲取當(dāng)前文件夾的信息
        for file in files:  # 掃描所有文件
            if os.path.splitext(file)[1] == ".html":  # 提取出所有后綴名為.html的文件
                os.chdir(root) # os.chdir() 方法用于改變當(dāng)前工作目錄到指定的路徑。
                print("正在轉(zhuǎn)換第:" + str(count) + "個(gè)文件")
                count = count + 1
                print("轉(zhuǎn)換開始:" + "pandoc " + file + " -o " + os.path.splitext(file)[0] + ".docx")
                # 使用os.system調(diào)用pandoc進(jìn)行格式轉(zhuǎn)化
                os.system("pandoc " + file + " -o " + os.path.splitext(file)[0] + ".docx")
                print("轉(zhuǎn)換完成...")
if __name__ == "__main__":
    # os.path.realpath(__file__))是當(dāng)前python文件所在的文件夾路徑,如果想要轉(zhuǎn)換指定文件夾,可以修改此路徑
    transfer_file(os.path.dirname(os.path.realpath(__file__)))

可以實(shí)現(xiàn)批量轉(zhuǎn)化

關(guān)于pypandoc

pandoc有一個(gè)python的包叫pypandoc,引入這個(gè)包直接調(diào)用pandoc.convert_file方法也可以實(shí)現(xiàn)文檔格式轉(zhuǎn)換,但是我沒有試過這種方式需不需要安裝pandoc,后面再摸索下

總結(jié)

pandoc是真的很強(qiáng)大,完美解決了亂碼問題和排版問題,另外原h(huán)tml中的圖片只要是在線圖片也可以轉(zhuǎn)到docx文檔中,以后再研究一下其他打開方式,聽說可以很方便的制作電子書,期待~

到此這篇關(guān)于基于python+pandoc實(shí)現(xiàn)html批量轉(zhuǎn)word的文章就介紹到這了,更多相關(guān)python實(shí)現(xiàn)html批量轉(zhuǎn)word內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python多進(jìn)程庫multiprocessing中進(jìn)程池Pool類的使用詳解

    Python多進(jìn)程庫multiprocessing中進(jìn)程池Pool類的使用詳解

    這篇文章主要介紹了Python多進(jìn)程庫multiprocessing中進(jìn)程池Pool類的使用詳解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • pycharm的python_stubs問題

    pycharm的python_stubs問題

    這篇文章主要介紹了pycharm的python_stubs問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python 基于wxpy庫實(shí)現(xiàn)微信添加好友功能(簡(jiǎn)潔)

    Python 基于wxpy庫實(shí)現(xiàn)微信添加好友功能(簡(jiǎn)潔)

    這篇文章主要介紹了Python 基于wxpy庫實(shí)現(xiàn)微信添加好友功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • JSON Web Tokens的實(shí)現(xiàn)原理

    JSON Web Tokens的實(shí)現(xiàn)原理

    本文主要介紹了JSON Web Tokens的實(shí)現(xiàn)原理。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-04-04
  • Python restful框架接口開發(fā)實(shí)現(xiàn)

    Python restful框架接口開發(fā)實(shí)現(xiàn)

    這篇文章主要介紹了Python restful框架接口開發(fā)實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • django使用django-apscheduler 實(shí)現(xiàn)定時(shí)任務(wù)的例子

    django使用django-apscheduler 實(shí)現(xiàn)定時(shí)任務(wù)的例子

    今天小編就為大家分享一篇django使用django-apscheduler 實(shí)現(xiàn)定時(shí)任務(wù)的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 撤回我也能看到!教你用Python制作微信防撤回腳本

    撤回我也能看到!教你用Python制作微信防撤回腳本

    如果好友短時(shí)間發(fā)送多條消息然后撤回會(huì)難以判斷究竟撤回的是哪條信息,只能靠猜.后來我覺得“猜”這個(gè)事情特別不Pythonic,研究一段時(shí)間后找到了解決方案,不得不驚嘆ItChat真的好強(qiáng)大,需要的朋友可以參考下
    2021-06-06
  • python write無法寫入文件的解決方法

    python write無法寫入文件的解決方法

    今天小編就為大家分享一篇python write無法寫入文件的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 7個(gè)有用的Pandas顯示選項(xiàng)分享

    7個(gè)有用的Pandas顯示選項(xiàng)分享

    Pandas是一個(gè)在數(shù)據(jù)科學(xué)中常用的功能強(qiáng)大的Python庫。在某些情況下,我們可能希望更改所顯示內(nèi)容的格式,這就需要使用Pandas的一些定制功能來幫助我們自定義內(nèi)容的顯示方式。本文為大家總結(jié)了7個(gè)有用的Pandas顯示選項(xiàng),希望對(duì)大家有所幫助
    2022-12-12
  • python logging日志模塊以及多進(jìn)程日志詳解

    python logging日志模塊以及多進(jìn)程日志詳解

    本篇文章主要介紹了python logging日志模塊以及多進(jìn)程日志詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04

最新評(píng)論