近臨近開學了,大家都在忙著準備各種學習的資料,準備在新的學期好好學習,充實自己。小編身邊的同學也是如此,最近,小編的同學小麗就遇到了一個很棘手的問題。
她想將一個網頁的Python學習的教程打印下來,方便自己來學習,但是上千頁的教程,如果通過手動的方式,一個一個的去轉成pdf并保存到本地,實在是麻煩的不。
這就是一個html轉pdf的問題,其實網上有很多不錯的html資源,但是苦于學習起來,不方便!于是小編就跟小麗保證,這點小事包在我身上。今天,小編就跟分享一下如何用Python把html資料變成pdf。
如今網上的在線學習資料可謂是多如牛毛,為了方便講解,小編就利用python3.9.2的中文文檔作為演示的例子,來將其抓取并保存到本地,其網頁鏈接如下:
https://docs.python.org/zh-cn/3.9/tutorial/index.html
打開上述鏈接后,大家會在網頁中找到不同內容的鏈接地址,包括了基礎的python字符、python語法等內容。
在上圖中,我們需要格外關注的是紅色方格標注的鏈接,每個鏈接都會跳轉到對應的子網頁中,而在子網頁中,就是我們想要保存的內容。
可以看到,上圖中,在python速覽子頁面中,包含了我們需要提取的文字內容。所以將html內容保存為pdf的第一步便是獲取到子頁面的鏈接。由于教程大都是固定內容,因此對于教程的網頁,大都采用的是靜態頁面,在網頁源代碼中可以很輕松地找到子頁面的網頁鏈接。
對于子網頁的鏈接抓取,程序如下圖所示:
程序中,通過BeautifulSoup庫來解析網頁源代碼,然后提取所有的子頁面鏈接地址并返回,如果抓取失敗,則直接返回None。
03.html轉pdf
在得到子網頁的鏈接后,接下來就是將html的子網頁保存為pdf文件。小編使用的pdfkit庫,pdfkit庫可以將網頁保存為pdf文檔。首先小編來介紹一下pdfkit庫的安裝。
按照上述的操作流程,就可以安裝pdfkit庫。對于pdfkit庫的使用,常見的用法有以下三種:
上面的程序主要完成以下幾步:
首先需要指定wkhtmltopdf.exe文件的路徑;
因此,pdfkit庫只能將子網頁保存為單獨的pdf文檔,無法直接通過pdfkit庫將所有的子網頁拼接成一個完整的pdf文檔,小編通過PyPDF2庫中的PdfFileMerger類來實現pdf文檔的拼接。程序如下圖所示。
程序中首先將所有的html網頁保存為單獨的pdf文檔,然后通過PdfFileMerger類對象來實現pdf文檔的拼接。最后就可以得到全部的pdf內容。最后我們通過視頻的展示,來看一下程序的效果吧。
除此之外,程序不光可以抓取python3.9的中文文檔,針對其他的在線文檔,只需要對獲取網頁鏈接的程序進行修改即可抓取,例如對于Flask中文文檔的抓取,程序只需要按照下圖進行修改,即可將Flask的在線文檔保存為PDF文檔。
學習Python其實非常有趣,也很有用。因為Python有大量的現成的庫,可以幫助我們把工作中的很多瑣碎的煩事輕松解決。小編將上述的程序稍加修改,很快就幫阿麗搞定了教程,保存為pdf發送給了她,小編與女神的關系更拉近了一步
TML編輯器從WORD復制粘貼圖片,HTML編輯器從WORD復制圖片,HTML編輯器從WORD粘貼圖片,javascript支持WORD上傳的富文本編輯器,JS支持word上傳的富文本編輯器,html支持word上傳的富文本編輯器,前端支持word上傳的富文本編輯器,vue支持word上傳的富文本編輯器,javascript粘貼word圖片,js粘貼word圖片,javascript導入word,js導入word,word文檔如何存到HTML編輯器上,word圖片如何保存到html編輯器上,word圖文如何保存到html編輯器上,word文檔如何轉存到html編輯器上,word文檔如何轉存到富文本編輯器上,word文檔如何轉存到web編輯器上,word文檔如何轉存到百度富文本編輯器上
HTML編輯器粘貼word圖片,web編輯器粘貼word圖片,web富文本編輯器粘貼word,
粘貼word內容,粘貼word圖片,粘貼word圖文,
用戶發布新聞的時候是從word里面復制圖片和文字,也就是復制word文檔里面的內容,這些內容包含文字和圖片
然后將word圖文內容粘貼到web富文本編輯器中,圖片自動上傳到web服務器中,上傳通過指定的接口,接口能夠自定義,能夠在內網使用,能夠在外網使用
粘貼后自動返回文字和圖片HTML,圖片和文字HTML自動添加到編輯器中,用戶能夠直接看到粘貼后的效果,能夠不裝插件最好。
1.下載示例:
http://www.ncmem.com/webapp/wordpaster/versions.aspx
2.復制WordPaster插件目錄
3.引入插件文件
注意:不要重復引入jquery,如果您的項目已經引入了jq,則不用再引入jq-1.4
4.在工具欄中增加插件按鈕
6.初始化控件
注意:
1.如果接口字段名稱不是file,請配置FileFieldName。ueditor接口中使用的upfile字段
參考:http://www.ncmem.com/doc/view.aspx?id=c3ad06c2ae31454cb418ceb2b8da7c45
2.如果接口返回JSON,請配置ImageMatch
參考:http://www.ncmem.com/doc/view.aspx?id=07e3f323d22d4571ad213441ab8530d1
3.如果接口返回的圖片地址沒有域名,請配置ImageUrl
參考:http://www.ncmem.com/doc/view.aspx?id=704cd302ebd346b486adf39cf4553936
4.如果接口有權限驗證(登陸驗證,SESSION驗證),請配置COOKIE。或取消權限驗證。
參考:http://www.ncmem.com/doc/view.aspx?id=8602DDBF62374D189725BF17367125F3
效果
訂閱版報價單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwE99pINf
年費版報價單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwFouDIB4#/
我們瀏覽網頁時可能需要把網頁上的內容保存下來,這時候有幾種方式可以做到:1、把重要的內容復制出來;2、對網頁進行截圖保存,我們推薦過的截圖插件如印象筆記·剪藏、Full Page Screen Capture等;3、把網頁保存成PDF,如Adobe Acrobat。4、直接把網頁保存成HTML。當然所有瀏覽器都有另存頁面為HTML 文檔的功能,不過可能會遇到一些問題,保存后不是各種資源如JS、CSS和圖片的文件很多,就是打開后無法載入樣式表,圖片顯示不出來,要把網頁備份起來或傳送給別人就很麻煩。本文要介紹的SingleFile是一款免費瀏覽器擴展,可以將完整的頁面保存到一個HTML文件中,包括所有CSS和圖片等等,讓用戶即使在一個HTML文檔中也能瀏覽完整內容。除了單一頁面外,SingleFile還支持保存選中的部分、非固定標簽頁或所有頁面,操作上也非常的簡單易用。如果你有保存頁面的需求,可以試試這款插件。
簡介
SingleFile
*請認真填寫需求信息,我們會在24小時內與您取得聯系。