各位高人,有没有办法取得当前浏览页面的html呢?
比如这样做:我正在浏览一个页面,需要获取这个页面的包含email的文字。
用浏览器菜单的:查看》查看源代码可以实现,delphi有没有代码可以实现类似于这样的功能呢?
比如这样做:我正在浏览一个页面,需要获取这个页面的包含email的文字。
用浏览器菜单的:查看》查看源代码可以实现,delphi有没有代码可以实现类似于这样的功能呢?
解决方案 »
- 数据表装入内存快速查找的问题,请大家多帮忙了。
- 又一次在Release时挂了
- 外接多边形问题
- gdi+中,我编辑了图形,不知道如何把编辑后的图形保存进一个文件??
- DoModal 显示对话框怎样传参数给它
- GetPathName()返回目录和文件名,GetFileName()返回文件名,哪个函数返回目录?
- 求助:如何在VC6.0里使用MDI显示Autocad的dwg文件
- ???! 帮我看看这段代码,用UpdateResource修改DLL中的STRING_TABLE中的某一项
- 为什么LIBID不认识????急!急!急! 在线等待
- 问题!CRichEditCtrl的初始化!
- vs2008在对话框中添加变量出现脚本错误
- WIN7 调用其他程序问题
是这样的情况:以当前正在看的这个csdn页为例,我写的一段代码定时器中一段代码执行要达到的目的是,取得当前这个csdn页的html内容。
能否静静的做这些工作,而不是让用户用我编写的浏览器输入网址?
浏览器句柄,页面句柄,是两个东西。
GetForegroundWindow函数,当鼠标点在页面内容的时候,得到的是页面句柄,用CTRL+A可以获得页面内容,这个很好。但是当鼠标点在标题栏的时候,得到的是浏览器的句柄,这个时候CTRL+A是无效的。大家可以将鼠标点一下浏览器的标题,然后按CTRL+A,会发现无法全选。
比如要做这样一件事情,30分钟时间一直浏览网页,在这30分钟内定时器每隔2分钟就获取一下正在浏览的页面内容(文本的也行),存储起来备案。
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('http://codeback.net');
end;//In the OnClick events of button1, adding codes.
procedure TForm1.Button1Click(Sender: TObject);
var
iElement : IHTMLElement;
begin
if Assigned(WebBrowser1.Document) then
begin
iElement := (WebBrowser1.Document AS IHTMLDocument2).body;while iElement.parentElement nil do
begin
iElement := iElement.parentElement;
end;
memo1.Text := iElement.outerHTML;
end;
end;之后运行工程,点击Button1按钮,看看效果,即可获得网页的html源码。文章出处:How to get a web page's html source by using TWebBrowser component in delphi
-