如何禁止WebBrowser访问某些特定的网站URL的内容? ( 积分: 47 )

  • 主题发起人 主题发起人 ynduanlian
  • 开始时间 开始时间
Y

ynduanlian

Unregistered / Unconfirmed
GUEST, unregistred user!
比如Webbroser加载了一个页面http://www.yuneach.com/rich/index.htm,而这个index.htm有一些广告代码,如:
<script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;>
</script>

这样的广告脚本,我如何禁止访问或过滤掉?
我的想法是WebBrowser不下载http://pagead2.googlesyndication.com/这个URL下任何内容,这如何做到?
 
一般用字符串匹配, 我给你个例子

procedure TFrmWeb.WebBrowser1TitleChange(Sender: TObject;
const Text: WideString);
var
i: integer;
iIndex: integer;
begin

。。。。。。。

with MainForm do
begin
for i := 0 to MDIChildCount - 1 do
begin
//关闭广告窗口
if ((AnsiUpperCase(MDIChildren.Caption) = 'POPAD')
or (AnsiUpperCase(MDIChildren.Caption) = 'POP AD')
or (AnsiUpperCase(MDIChildren.Caption) = 'POP_AD')
or (AnsiUpperCase(MDIChildren.Caption) = 'SOHU.COM POPUNDER AD')
or (MDIChildren.Caption = '背投广告')
) then
begin
if (TFrmWeb(MDIChildren).WebBrowser1 <> nil) and
(TFrmWeb(MDIChildren).WebBrowser1.Document <> nil) then
begin
TFrmWeb(MDIChildren).WebBrowser1.Stop;
Sleep(500);
MDIChildren.Close;
end;
end;
end;
SetFocus;
end;
。。。。。。。。。

end.
 
在BeforeNavigate2里写
cancel:=pos('网址',URL)>0;

这里的网址你要把http://pagead2.googlesyndication.com/pagead/show_ads.js里的
pagead2.googlesyndication.com取出来,具体取法我就不说了
 
多人接受答案了。
 
后退
顶部