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

如何利用Python將html轉(zhuǎn)為pdf、word文件

 更新時間:2022年12月19日 08:30:19   作者:Python妙妙屋  
網(wǎng)絡(luò)上存在很多將HTML轉(zhuǎn)換為PDF的軟件和工具,但是大家都知道收費,所以下面這篇文章主要給大家介紹了關(guān)于如何利用Python將html轉(zhuǎn)為pdf、word文件的相關(guān)資料,文中通過示例代碼介紹介紹的非常詳細,需要的朋友可以參考下

前言

在日常中有時需將 html 文件轉(zhuǎn)換為 pdf、word 文件。網(wǎng)上免費的大多數(shù)不支持多個文件轉(zhuǎn)換的情況,而且在轉(zhuǎn)換幾個后就開始收費了。

轉(zhuǎn) pdf

轉(zhuǎn) pdf 中使用 pdfkit 庫,它可以讓 web 網(wǎng)頁直接轉(zhuǎn)為 pdf 文件,多個 url 可以合并成一個文件。

安裝 pdfkit 庫

pip3 install pdfkit

安裝 wkhtmltopdf 文件

pdfkit 是基于 wkhtmltopdf 的 python 封裝庫,所以需要安裝 wkhtmltopdf 軟件。

在windows 系統(tǒng)中,需要將 wkhtmltopdf.exe 文件路徑配置在系統(tǒng)環(huán)境變量中。

url 生成 pdf

這里使用 baidu 首頁和 bing 首頁作為示例

import pdfkit
 
# 第一個參數(shù)可以是列表,放入多個域名,第二個參數(shù)是生成的 PDF 名稱
pdfkit.from_url(['www.baidu.com','www.bing.com'],'search.pdf')

本地 html 文件生成 pdf

提前將需要轉(zhuǎn)換的 html 存儲到本地,也可以使用 python 爬蟲代碼抓取 html 文件到本地。

import pdfkit
 
pdfkit.from_file('/Users/xx/Desktop/html/baidu.html', 'search.pdf')

轉(zhuǎn) word

使用 pypandoc 庫將 html 轉(zhuǎn)換為 word 文件,pypandoc 是一個支持多種文件格式轉(zhuǎn)換的 Python 庫,它用到了 pandoc 軟件,所以需要在電腦上安裝 pandoc 軟件

安裝 pypandoc 庫

pip install pypandoc

安裝 pandoc 軟件

pypandoc 是基于 pandoc 軟件的庫,所以要安裝一下 pandoc (https://github.com/jgm/pandoc/releases/tag/2.11.4),pandoc 支持多種類型轉(zhuǎn)換。下圖是 pandoc 的轉(zhuǎn)換類型。

使用

將 html 文件提前存儲在本地,也可以用爬蟲將需要轉(zhuǎn)換的 html 文件在代碼中抓取后使用。

import pypandoc
 
# convert_file('原文件','目標格式','目標文件')
output = pypandoc.convert_file('/Users/xx/Desktop/html/baidu.html', 'docx', outputfile="baidu.doc")

pypandoc 無法對 word 進行排版,所以需要小伙伴們進行 2 次排版。

補充:用python把pdf文件轉(zhuǎn)換為word文件

安裝pip install pdf2docx:

pip install pdf2docx

如果安裝過程出現(xiàn)報錯,可能是版本匹配問題,先安裝PyMuPDF這個庫即可正常安裝pip install PyMuPDF。

pip install PyMuPDF

安裝好后,把需要轉(zhuǎn)換的PDF文檔放到和python代碼同一個文件夾內(nèi)。

python代碼:

import os
from pdf2docx import Converter
 
def pdf_docx():
 
    # 獲取當前工作目錄
    file_path = os.getcwd()
 
    # 獲取所有文件
    files = os.listdir(file_path)
 
    # 遍歷所有文件
    for file in files:
 
        # 過濾臨時文件
        if '~$' in file:
            continue
 
        # 過濾非pdf格式文件
        if file.split('.')[-1] != 'pdf':
            continue
        # 獲取文件名稱
        file_name = file.split('.')[0]
        # pdf文件名稱
        pdf_name = os.getcwd() + '\\' + file
        # docx文件名稱
        docx_name = os.getcwd() + '\\' + file_name + '.docx'
        # 加載pdf文檔
        cv = Converter(pdf_name)
        cv.convert(docx_name, start=0, end=12)
        cv.close()
 
if __name__ == '__main__':
    pdf_docx()

start是pdf轉(zhuǎn)換的起始頁,end是結(jié)束頁。如果不傳入start和end這兩個參數(shù),默認就是從第一頁轉(zhuǎn)換到最后一頁。也可以通過pages方法確定轉(zhuǎn)換頁數(shù),方法為:cv.convert(docx_file, pages=[0,2, 5])

總結(jié)

利用好 Python 第三方庫類,可以為小伙伴寫出各種個性化定制的小程序

到此這篇關(guān)于如何利用Python將html轉(zhuǎn)為pdf、word文件的文章就介紹到這了,更多相關(guān)Python將html轉(zhuǎn)pdf word內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • pandas 轉(zhuǎn)換成行列表進行讀取與Nan處理的方法

    pandas 轉(zhuǎn)換成行列表進行讀取與Nan處理的方法

    今天小編就為大家分享一篇pandas 轉(zhuǎn)換成行列表進行讀取與Nan處理的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python+OpenCV實現(xiàn)火焰檢測

    Python+OpenCV實現(xiàn)火焰檢測

    本文主要為大家介紹了一個使用Python,OpenCV,線程,聲音和電子郵件功能的火災(zāi)探測系統(tǒng),文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2024-10-10
  • python plotly繪制直方圖實例詳解

    python plotly繪制直方圖實例詳解

    這篇文章主要介紹了python plotly繪制直方圖實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • Python圖像處理之圖像量化處理詳解

    Python圖像處理之圖像量化處理詳解

    這篇文章將介紹圖像量化處理,即將圖像像素點對應(yīng)亮度的連續(xù)變化區(qū)間轉(zhuǎn)換為單個特定值的過程。文中的示例代碼講解詳細,需要的可以參考一下
    2022-02-02
  • 使用Docker制作Python環(huán)境連接Oracle鏡像

    使用Docker制作Python環(huán)境連接Oracle鏡像

    這篇文章主要為大家介紹了使用Docker制作Python環(huán)境連接Oracle鏡像示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Python aiohttp百萬并發(fā)極限測試實例分析

    Python aiohttp百萬并發(fā)極限測試實例分析

    這篇文章主要介紹了Python aiohttp百萬并發(fā)極限測試,結(jié)合實例形式分析了Python異步編程基于aiohttp客戶端高并發(fā)請求的相關(guān)操作技巧與使用注意事項,需要的朋友可以參考下
    2019-10-10
  • Python os模塊介紹

    Python os模塊介紹

    這篇文章主要介紹了Python os模塊介紹,需要的朋友可以參考下
    2014-11-11
  • python中為main方法傳參問題

    python中為main方法傳參問題

    這篇文章主要介紹了python中為main方法傳參問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 基于Python實現(xiàn)文件處理程序

    基于Python實現(xiàn)文件處理程序

    這篇文章主要為大家詳細介紹了如何基于Python實現(xiàn)一個簡單的文件處理程序,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-01-01
  • 一些Python?5行代碼的神奇操作匯總

    一些Python?5行代碼的神奇操作匯總

    最開始學習?Python,不需要太過復雜,下面這篇文章主要給大家介紹了關(guān)于Python?5行代碼的神奇操作,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04

最新評論

临邑县| 格尔木市| 开封市| 天峨县| 新密市| 湟源县| 保靖县| 邛崃市| 芜湖县| 澜沧| 闸北区| 丰城市| 万安县| 萍乡市| 锦屏县| 兴化市| 延津县| 谢通门县| 平凉市| 图片| 贡山| 盐池县| 吕梁市| 南靖县| 南漳县| 梓潼县| 玛多县| 西藏| 搜索| 门头沟区| 昂仁县| 黄石市| 黑龙江省| 如东县| 长武县| 靖安县| 迭部县| 南乐县| 革吉县| 清水河县| 都江堰市|