網頁轉CHM的筆記
最近突然產生了一個需求,要把某網站的內容保存到本地,但是這個網站很特別,離線網頁會自動跳轉到主站……,于是便想到把網頁的內容提取出來,想來想去只有chm能做到了。
首先是找到了一個開源的chm制作工具PrecisionHelper_CHM。
https://xbeta.info/chm.htm#mozTocId163078

基本步驟是安裝后先把語言改成中文,然后新建項目,在項目文件夾內創(chuàng)建.htm文件,把.htm文件和依賴的圖片等文件導入到"包含的文件"處,再在目錄中添加主題,保存項目后再用MicrosoftHTMLHelpWorkshop打開項目文件編譯。

PrecisionHelper要創(chuàng)建一個主題內容,需要導入.htm文件以及相關的圖片文件等,在目錄里新建主題后將右邊"鏈接"改為需要的.htm文件名(名稱與導入名相同即可)。

導入后用VS Code可以直接編輯網頁,在Chrome中打開查看頁面的效果。
以某網站的網頁源碼為例,在頁面右鍵查看網頁源代碼后,可以看到以下內容:

全選復制到.htm文件里,這里有兩個要注意的點。
一是chm開頭是
二是<html>內不帶別的東西。
像這個網頁是
就需要修改了。
接下來的<head>部分可以全刪,也可以保留像
的格式,但是<head>內不能留有l(wèi)ang = "zh-CN"這樣的東西。
【如果這兩個地方不做修改導出的chm在其他電腦打開會出現(xiàn)亂碼】
body部分,<article>之前的部分以及</article>之后的部分直接刪除。
文件的最后是</body></html>,注意保留。
接下來是將文章的圖片保存到項目文件夾內,導入到項目中,在諸如
的部分,改成圖片的鏈接
再回到軟件,設置項目屬性的“已編譯幫助文件”(chm文件編譯路徑),“默認主題”(打開chm后首先看到的主題)

chm的編輯部分就算結束了。
編譯不需要使用PrecisionHelper,使用MicroSoft HTML Help Workshop。
先在網上下載MicroSoft HTML Help Workshop,安裝后點擊hhw.exe打開軟件,選擇"文件-編譯"

在對話框中選擇項目文件夾中的.hhp文件,就可以開始編譯了。
編譯結束后在編譯路徑下就可以看到.chm文件了。

總結:網頁轉CHM核心在于刪減源代碼中無用的部分以及修改圖片的鏈接,所以需要一些對html的理解,剩下的都好說。