• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

delphi从TWebBrowserWebBrowser得到全部html源码

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

delphi 从TWebBrowser WebBrowser得到全部html源码

 

 

 http://blog.csdn.net/webouse/article/details/3912174
 

网上查询出很多方法,归结起来有两种

1、使用IPersistStreamInit接口实现,函数名都是function GetHtml(const WebBrowser: TWebBrowser) : string;这个函数确实可以得到全部的html源码,但是里面用到了hHTMLText := GlobalAlloc(GPTR, BufSize); 而没有调用GlobalFree释放hHTMLText ,加上GlobalFree(hHTMLText),但是程序会出错,怪不得没有人加释放的函数。

2、Memo1.Lines.Add(IHtmlDocument2(WebBrowser1.Document).Body.OuterText);这中方法只能得到<head>后面的源码,<head>源码得不到。

 

以上两种方法都有缺陷,后来从国外的网站上找到了很简单的方法来取得WebBrowser全部html源码的方法,如下

 

uses mshtml;  
var  
    iall : IHTMLElement;  
begin  
   if Assigned(WebBrowser1.Document) then  
   begin  
     iall := (WebBrowser1.Document AS IHTMLDocument2).body;  
     while iall.parentElement <> nil do  
     begin  
       iall := iall.parentElement;  
     end;  
     memo1.Text := iall.outerHTML;  
   end;  
end;  

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
MATLAB - 为什么imshow(g,[])可以正常显示,而imshow(g)却显示空白图像? ...发布时间:2022-07-18
下一篇:
matlab发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap