下载网页内容,并编译生成CHM文件

简介:

  看了园子里的一系列关于生成CHM的文件的方式,主要是这些:

C#生成CHM文件(入门篇)
C#生成CHM文件(中级篇)
C#生成CHM文件(应用篇)

http://www.cnblogs.com/alexis/archive/2010/10/16/1853275.html

  自己就想写一个从网上下载页面,然后将页面编译成CHM的小程序。现在把源代码提供出来:

源代码下载

  主要的难点是网页编码的判断,目前是先对Request的HEAD里面的Content-Type中进行判断,如果这里没有获取到,在根据默认的编码解析网页内容,获取网页内部的Content-Type标签数据。如果这两种都无法获取到,这个网页就有可能会出现乱码,如果哪位有更好的解决方案,还望不吝赐教!

  HTML的解析,我用的是开源的Winista.Htmlparser.Net,感觉挺方便,园子里也有相应的教程,我就不多说了。




本文转自齐师傅博客园博客,原文链接http://www.cnblogs.com/youring2/archive/2012/04/24/2467747.html,如需转载请自行联系原作者

相关文章
|
11月前
|
自然语言处理 JavaScript 前端开发
提升效率,从一个时间戳转换工具开始,CodeBuddy Craft 实战分享
在开发中,常需将时间戳与日期格式互转。这类“低门槛、高频率”需求虽基础却繁琐。CodeBuddy 的 Craft 模式可通过自然语言描述快速生成功能代码,如一个支持时区、简洁界面的时间戳转换工具。它省去实现细节的烦恼,甚至自动补全扩展功能,大幅提升效率。开发者无需重复造轮子,可专注于更有价值的工作。试试 CodeBuddy,感受“说一说就能写代码”的高效体验!
|
Ubuntu Linux
Ubuntu Linux
背景 Ubuntu起源于南非,其名称“Ubuntu”来源于非洲南部祖鲁语或豪萨语,意为“人性”、“我的存在是因为大家的存在”,这体现了非洲传统的一种价值观。Ubuntu由南非计算机科学家马克·沙特尔沃斯(Mark Shuttleworth)创办,他创立了Canonical公司来推动Ubuntu的发展。Ubuntu的第一个版本于2004年发布,至今已经走过了近20个年头,成为了Linux发行版中的佼佼者。
522 4
Ubuntu Linux
|
存储 安全 数据挖掘
服务器数据恢复—正常断电后重启的服务器中Raid5阵列崩溃的数据恢复案例
服务器数据恢复环境: 一台某品牌DL380 G4服务器,服务器通过该服务器品牌smart array控制器挂载了一台国产的磁盘阵列,磁盘阵列中有一组由14块SCSI硬盘组建的RAID5。服务器安装LINUX操作系统,搭建了NFS+FTP,作为内部文件服务器使用。 服务器故障: 搬迁机房后,工作人员将服务器和磁盘阵列打扫了一下,连接所有线缆后,将服务器和磁盘阵列开机,发现服务器无法识别RAID,提示未做初始化。 北亚企安数据恢复工程师到达现场后对服务器和磁盘阵列进行简单的初检,经过初检发现数据丢失的原因是raid信息丢失,该RAID的冗余采用双循环的校验方式。
|
存储 人工智能 文字识别
VideoRAG:长视频理解的检索增强生成技术,支持多模态信息提取,能与任何 LVLM 兼容
VideoRAG 是一种用于长视频理解的检索增强生成技术,通过提取视频中的视觉对齐辅助文本,帮助大型视频语言模型更好地理解和处理长视频内容。
976 10
VideoRAG:长视频理解的检索增强生成技术,支持多模态信息提取,能与任何 LVLM 兼容
|
人工智能 自然语言处理 达摩院
VideoLLaMA3:阿里达摩院开源专注于视觉理解的多模态基础模型,具备多语言视频理解能力
VideoLLaMA3 是阿里巴巴开源的多模态基础模型,专注于图像和视频理解,支持多语言生成、视频内容分析和视觉问答任务,适用于多种应用场景。
1132 6
|
资源调度 前端开发 JavaScript
前端研发链路之脚手架
本文首发于微信公众号“前端徐徐”。文章介绍了前端开发中脚手架工具的重要性及其工作原理。脚手架工具能够大幅提升开发效率,确保代码质量和项目一致性。文章详细探讨了脚手架的历史、工作原理、常见工具及其优势与潜在问题,并展望了其未来发展方向,帮助开发者更好地理解和应用脚手架工具。
522 4
前端研发链路之脚手架
|
Oracle 关系型数据库 Java
Oracle数据库导入工具IMP详解与用法
Oracle数据库导入工具IMP详解与用法
|
传感器 监控 物联网
智能水管理:城市水资源的优化分配
【10月更文挑战第9天】在城市化进程中,水资源管理和分配成为关键议题。面对人口增长、工业与农业需求增加导致的资源短缺和污染问题,智能水管理技术应运而生。本文探讨其概念、技术和应用,展示如何通过现代信息技术、物联网、大数据分析及人工智能手段实现水资源的实时监控、精准预测和智能调度,从而提升城市供水系统的安全性与可靠性,促进可持续发展。
|
JavaScript 测试技术 API
顺藤摸瓜🍉:用单元测试读懂 vue3 中的 provide/inject
顺藤摸瓜🍉:用单元测试读懂 vue3 中的 provide/inject
汉化FC(红白机)游戏需要用到哪些技术?
这篇文章介绍了FC(红白机)游戏文本汉化的基本流程和技术知识。主要步骤包括分析游戏ROM、寻找文本字符串、学习游戏代码、修改文本、修改ROM头信息、重新映射、测试和修正。文章还提供了汉化实例,详细讲解了如何使用各种工具,如VirtuaNES Debugger、NO$NES、6502 Simulator等进行ROM分析和修改。此外,文章还介绍了如何使用汇编语言编写自定义程序以实现大字体汉化和在游戏画面切换时恢复原来的VROM。整个过程需要对6502汇编语言、NES硬件架构和ROM结构有一定的理解和编程经验。