【python】網頁批量轉PDF

安裝wkhtmltopdf?

網站:wkhtmltopdf

wkhtmltopdf http://www.baidu.com/ D:website1.pdf

安裝pdfkit庫

pip install pdfkit

批量轉換代碼

import os
import pdfkit
path_wkthmltopdf = r'E:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)def convert_html_to_pdf(input_folder, output_folder):# 確保輸出文件夾存在if not os.path.exists(output_folder):os.makedirs(output_folder)# 遍歷輸入文件夾及其子文件夾中的所有文件for root, dirs, files in os.walk(input_folder):for file in files:if file.endswith(".htm"):html_file_path = os.path.join(root, file)pdf_file_path = os.path.join(output_folder, file.replace('.htm', '.pdf'))try:# 使用pdfkit將HTML文件轉換為PDF文件pdfkit.from_file(html_file_path, pdf_file_path,configuration=config, options={'encoding': 'utf-8',"enable-local-file-access":True})print(f"成功轉換: {html_file_path} -> {pdf_file_path}")except Exception as e:print(f"轉換失敗: {html_file_path} -> {pdf_file_path}, 錯誤信息: {e}")if __name__ == "__main__":input_folder = 'D:\'  # 輸入文件夾路徑,這里設置為當前目錄output_folder = 'D:\pdf'  # 輸出文件夾路徑convert_html_to_pdf(input_folder, output_folder)

報錯解決

Python OSError: wkhtmltopdf reported an error:Exit with code 1 due to network error:ProtocolUnknownE_exit with code 1 due to network error: protocolunk-CSDN博客

參考

pdfkit | 利用python實現html文件轉pdf (zhihu.com)

Python OSError: wkhtmltopdf reported an error:Exit with code 1 due to network error:ProtocolUnknownE_exit with code 1 due to network error: protocolunk-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/70465.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/70465.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/70465.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

游戲引擎學習第113天

倉庫:https://gitee.com/mrxiao_com/2d_game_2 黑板:優化的基本過程 在游戲編程中,優化是一個非常重要的學習內容,尤其是想要成為專業開發者時。優化的核心是理解代碼的執行速度,以及如何提升其性能。在這個階段,已經…

通義靈碼AI程序員

通義靈碼是阿里云與通義實驗室聯合打造的智能編碼輔助工具,基于通義大模型技術,為開發者提供多種編程輔助功能。它支持多種編程語言,包括 Java、Python、Go、TypeScript、JavaScript、C/C、PHP、C#、Ruby 等 200 多種編碼語言。 通義靈碼 AI…

SeaTunnel社區「Demo方舟計劃」首期活動上線—— MySQL CDC實時同步至PostgreSQL實戰

引言 凌晨2點,某電商公司的數據工程師小李正對著屏幕抓狂——業務部門臨時要求將MySQL的訂單表實時同步到PostgreSQL進行分析,眾所周知,在數據驅動的業務場景中,異構數據源同步是高頻剛需。 以MySQL到PostgreSQL的CDC同步為例&a…

iNeuOS工業互聯網操作系統,民爆遠程運維平臺案例

iNeuOS工業互聯網操作系統,民爆遠程運維平臺案例 目 錄 1. 概述... 2 2. iNeuOS在民爆生產廠區和北京運維中心配置... 3 1.1 生產廠區配置... 3 1.2 運維中心配置... 7 1. 概述 針對本項目進行初步調研,項目的總體需求為滿足新建…

利用websocket檢測網絡連接穩定性

瀏覽器中打開F12,控制臺中輸入以下內容 > 回車 > 等待結果 連接關閉 表示斷網 let reconnectDelay 1000; // 初始重連間隔 let pingInterval null; let socketManuallyClosed false; // 標志是否手動關閉function createWebSocket() {if (socketManuallyCl…

Unity shader glsl著色器特效之 模擬海面海浪效果

一個簡單的海浪效果,通過波的疊加實現水面起伏的動效,根據波峰斜率來為浪花著色,再根據法線貼圖和水花貼圖來和調整uv的平滑移動來增強海浪移動的細節。如果需要更逼真的效果可以考慮在滿足浪花觸發的地方添加粒子系統 前置效果圖 因為是很久…

智能經濟與個人智能助理有什么發展

智能經濟與個人智能助理有什么發展 技術融合創新 研究個人助理與新興技術(如量子計算、邊緣計算)融合,分析對智能經濟的推動作用。探索量子計算提升數據處理速度,邊緣計算降低延遲,提升個人助理性能的機制&#xff0…

spring日志

前言 入門 這些就是日志 現在開始使用一下 spring是集合了日志的 注意選這個 這樣我們就創建好了一個日志對象了 我們就可以這樣打印日志了 日志和普通的打印消息相比,區別就是多個一些時間之類的消息 從左到右分別是時間,級別,PID&#x…

整合Salesmart/WhatsApp、開源Odoo模塊和Deepseek AI能力,實現針對國外客戶的智能客服和個性化推薦服務

一、項目背景 本文提出了一套針對軟管制造公司的智能客服與個性化推薦系統實施方案,旨在通過整合開源Odoo模塊、Salesmart/WhatsApp以及Deepseek AI能力,打造一個724小時不間斷服務的智能化平臺,專注于服務國外客戶。方案圍繞實現不間斷服務…

Java中JDK、JRE,JVM之間的關系

Java中的JDK、JRE和JVM是三個核心概念,其關系可概括為JDK > JRE > JVM,具體如下: 一、定義與作用 JDK(Java Development Kit) 定義:Java開發工具包,用于開發和編譯Java程序。包含內容&…

用C++ Qt實現安卓電池充電動效 | 打造工業級電量控件

一、為什么需要自定義電池控件? 在工業控制、車機系統、智能硬件等領域的UI開發中,電池狀態顯示是高頻出現的UI組件。通過實現一個支持顏色漸變、動態充電動畫、警戒閾值提示的電池控件,開發者可以系統掌握以下核心能力: Qt繪圖…

Django+Vue3全棧開發實戰:從零搭建博客系統

文章目錄 1. 開發環境準備2. 創建Django項目與配置3. 設計數據模型與API4. 使用DRF創建RESTful API5. 創建Vue3項目與配置6. 前端頁面開發與組件設計7. 前后端交互與Axios集成8. 項目優化與調試9. 部署上線10. 總結與擴展10.1 項目總結10.1.1 技術棧回顧10.1.2 項目亮點 10.2 擴…

Django 5實用指南(五)模板系統

Django5的模板系統是其核心功能之一,允許開發者將動態數據嵌入到HTML模板中,并根據不同的業務需求渲染頁面。Django模板系統基于 Django模板語言(DTL),它提供了一些強大的功能,如模板標簽、過濾器、條件語句…

uni-app開發app時 使用uni.chooseLocation遇到的問題

問題一:不顯示 問題二:選擇地址列表一直在加載中 因為 uni-app 接口文檔 中已經說明,使用騰訊的話需要開啟云服務,具體可看官網,這就是為什么使用時直接不顯示的原因,所以我使用的高德,但又出現…

推薦系統-排序模型

本次學習的重點是FM系列和WideNDeep系列。其實這兩個模型是存在因果關系的。從最初的LR模型開始,因為缺失高效的特征交互方式,產生了FM模型,即通過向量內積代替特征之間的兩兩交互的參數。最后DNN的引入可以建模更高階的特征。但是DNN如何與F…

體驗用ai做了個python小游戲

體驗用ai做了個python小游戲 寫在前面使用的工具2.增加功能1.要求增加視頻作為背景。2.我讓增加了一個歡迎頁面。3.我發現中文顯示有問題。4.我提出了背景修改意見,歡迎頁面和結束頁面背景是視頻,游戲頁面背景是靜態圖片。5.提出增加更多游戲元素。 總結…

c#爬取數據并解析json

安裝 Newtonsoft.Json Install-Package Newtonsoft.Json代碼 HttpClient client new HttpClient();// 獲取網頁內容HttpResponseMessage response client.GetAsync("https://opentdb.com/api.php?amount10&category18&difficultyeasy&typemultiple"…

計算機畢業設計Python農產品推薦系統 農產品爬蟲 農產品可視化 農產品大數據(源碼+LW文檔+PPT+講解)

溫馨提示:文末有 CSDN 平臺官方提供的學長聯系方式的名片! 溫馨提示:文末有 CSDN 平臺官方提供的學長聯系方式的名片! 溫馨提示:文末有 CSDN 平臺官方提供的學長聯系方式的名片! 作者簡介:Java領…

【分布式理論13】分布式存儲:數據存儲難題與解決之道

文章目錄 一、數據存儲面臨的問題二、RAID磁盤陣列的解決方案1. RAID概述2. RAID使用的技術3. RAID的代表性等級 三、分布式存儲的新思路1. 分布式存儲背景與特點2. 分布式存儲的組成要素 一、數據存儲面臨的問題 在單機系統時代,當數據量不斷增加、硬盤空間不夠時…

高德地圖android sdk(備忘)

依賴 // 權限請求框架:https://github.com/getActivity/XXPermissions implementation com.github.getActivity:XXPermissions:20.0 // https://mvnrepository.com/artifact/com.amap.api/navi-3dmap-location-search implementation com.amap.api:navi-3dmap-loca…