使用TWebBrowser组件保存网页为html和mht文件 收藏
一、保存为HTML文件

uses ActiveX;
...
procedure WB_SaveAs_HTML(WB : TWebBrowser; const FileName : string) ;
var
  PersistStream: IPersistStreamInit;
  Stream: IStream;
  FileStream: TFileStream;
begin
  if not Assigned(WB.Document) then
  begin
    ShowMessage('Document not loaded!') ;
    Exit;
  end;

PersistStream := WB.Document as IPersistStreamInit;
  FileStream := TFileStream.Create(FileName, fmCreate) ;
  try
    Stream := TStreamAdapter.Create(FileStream, soReference) as IStream;
    if Failed(PersistStream.Save(Stream, True)) then ShowMessage('SaveAs HTML fail!') ;
  finally
    FileStream.Free;
  end;
end; (* WB_SaveAs_HTML *)

使用方法:

WebBrowser1.Navigate('http://www.uufax.com') ;

//then save
WB_SaveAs_HTML(WebBrowser1,'c:/WebBrowser1.html') ;

二、另存为MHT单一文件

uses CDO_TLB, ADODB_TLB;
...
procedure WB_SaveAs_MHT(WB: TWebBrowser; FileName: TFileName) ;
var
  Msg: IMessage;
  Conf: IConfiguration;
  Stream: _Stream;
  URL : widestring;
begin
  if not Assigned(WB.Document) then Exit;

URL := WB.LocationURL;

Msg := CoMessage.Create;
  Conf := CoConfiguration.Create;
  try
    Msg.Configuration := Conf;
    Msg.CreateMHTMLBody(URL, cdoSuppressAll, '', '') ;
    Stream := Msg.GetStream;
    Stream.SaveToFile(FileName, adSaveCreateOverWrite) ;
  finally
    Msg := nil;
    Conf := nil;
    Stream := nil;
  end;
end; (* WB_SaveAs_MHT *)

使用方法:

//first navigate
WebBrowser1.Navigate('http://www.uufax.com') ;

//then save
WB_SaveAs_MHT(WebBrowser1,'c:/WebBrowser1.mht') ;

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sunstone/archive/2009/11/09/4788743.aspx

使用TWebBrowser组件保存网页为html和mht文件 收藏相关推荐

  1. delphi TWebBrowser组件使用详解

    delphi TWebBrowser组件使用详解 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等 ...

  2. 使用Chrome保存网页为mht文件

    一直在使用chrome浏览器,但由于需要将部分网页保存为mht文件,却发现chrome默认不支持.chrome浏览器默认支持2种:单独的html文件,全部: 万能的chrome怎么可能保存不了mht? ...

  3. mht文件无法打开的解决办法

    对于喜欢上网的人士来说,经常会将自己看到的好的文章保存下来,以便日后再次翻阅,保存方法有两种:一种是通过浏览器的收藏夹进行收藏,这种方式适合于能够一直上网的电脑:另一种是通过浏览器"文件-& ...

  4. mht文件转为html文件(javax.mail方式)

    mht文件转为html文件 由于mht文件是IE特有的格式,只能IE浏览器打开.用别的浏览器,如chrome打开该类型文件会产生乱码,但是我们大部分使用的还是chrome,因此想要打开该类型的文件,其 ...

  5. java mht 转html_【JAVA】mht文件转html

    网上搜索获得mht文件转html,稍作了修改,即可使用,在此做个笔记. public class Mht2HtmlUtil { public static void main(String[] arg ...

  6. 用 Microsoft.mshtml.dll 和 WebClient 自己实现网页保存为 MHT 文件

    相信大家经常用IE保存网页功能保存有价值的网页,但是IE的网页保存功能做的不是太好,经常会有些页面保存失败.我也深受其烦,好在本人是程序员,程序员最大的好处是会自己编软件.正好我自己开发了个多页签浏览 ...

  7. mht文件转为html文件(mime4j方式)

    mht文件转为html文件 由于之前提供的方式一,可能在工程的众多依赖中,存在jar包冲突,如mail.jar和javaee5.jar都存在javax.mail的类路径,导致在强制类型转换会出现异常, ...

  8. IE浏览器 打开.mht文件乱码

    前一段我也发现了这个问题 但是不影响我的日常使用 也就没有搞清楚到底是什么原因 今天我打算将Moto L2中的联系人信息和电脑中的同步一下 在MPT工具中的同步页面也是乱码 看来真要搞个水落石出了,百 ...

  9. C#代码实现把网页文件保存为mht文件

    MHT叫"web单一文件".顾名思义,就是把网页中包含得图片,CSS文件以及HTML文件全部放到一个MHT文件里面.而且浏览器可以直接读取得. 由于项目需要,需实现把指定的网页文件 ...

最新文章

  1. 更改innodb_page_size状态值
  2. src与href的区别
  3. 解除svn控制下的文件夹的svn的控制
  4. 【数字信号处理】序列分类 ( 单边序列和双边序列 | 左边序列 | 右边序列 | 有限序列和无限序列 | 稳定序列和不稳定序列 )
  5. 大学计算机基础python学多久_怎么自学python,大概要多久?
  6. php.ini 相对路径,php中zend相对路径问题
  7. Linux设备驱动开发概述
  8. python 列联表自动拆分_python自动化办公:实现按照一列内容拆分excel
  9. ssh服务、密钥登陆配置
  10. java中CompletionService的使用
  11. JumpServer 开源堡垒机 快速部署
  12. convex optimization from stanford
  13. 6.2GPT意境级讲解
  14. Oracle 字符集
  15. ADMM算法求解二次项目标函数+l1正则项问题
  16. Spring官方文档(中文版!!!)
  17. 笔记之PWM暂停输出,保持低电平问题
  18. 计算机关机桌面就还原,电脑重启后桌面还原怎么办
  19. GBC游戏掌机(一)
  20. 好用的GraphViz 在线绘图收集

热门文章

  1. zoj-3802-Easy 2048 Again
  2. leetcode之Climbing Stairs爬楼梯
  3. NYOJ 309 BOBSLEDDING(dp)
  4. shiro的简单入门使用
  5. luogu P5304 [GXOI/GZOI2019]旅行者
  6. 面向对象和面向过程,python中的类class,python中程序的入口——main方法,
  7. Linux第六周学习总结——进程额管理和进程的创建
  8. CUBRID学习笔记 42 Hierarchical QuerySQL层级查询
  9. CentOS下Yum使用
  10. PHP核心技术笔记(2):面向对象的设计原则