奇客资讯、软件硬件、编程系统

February 7th, 2008

permalink 将CHM解开成html来看

CHM的全称叫Microsoft Compiled HTML Help,所以从前只有Windows能看,后来Linux上也出了许多查看工具,什么xchm/chmsee/gnochm/kchmviewer等 等,但据说效果差异比较大。

后来这个格式就被人反向了,虽然也很复杂,但还是可以解出来,主要内容部分据说和cab文件的压缩算法是一致的,于是就有一些解压工具可以把它解开了,比如著名的开源压缩工具7zip(强烈推荐使用),就可以解开chm。这个工具开源程序很高,所以在Linux上也有,Debian的包叫p7zip/p7zip-full,前面简单点,后者比较全,但是它们都不支持chm格式解压。

后来又发现另一个工具,叫archmage,模仿archive的样子吧(用dict查了下,竟然是个词,archimage,某种大巫师,波斯拜火教的什么的),Python写的,专门来解开或查看chm。基本用法是:

archmage <chmfile> <directory>
把chm文件解开到目录

archmage -p <port> <chmfile>
把自己当成一个http服务器,在指定端口运行,然后就可以在浏览器里看
如果装了apache的python模块,还可以调用它的模块,直接在apache下运行。其实解开就挺好的,这样获取它的文字也比较容易 :p 试了几个,有的完全正常,连旁边的章节什么的都好用,有的正文正常,边栏会乱码,估计转下码就好了。

[ 原文由由cathayan发表在Blog on 27th Floor ]