winform-webbrowser屏蔽网页中的广告

来源:互联网 发布:windows api大全 编辑:程序博客网 时间:2024/05/03 18:31

1.我这里的webbrowser调用http://lishi.tianqi.com/haerbin/index.html这个网页,直接在Load中写代码即可:

[csharp] view plain copy
  1. private void HistoryWeatherTongJi_Load(object sender, EventArgs e)  
  2.       {  
  3.           webBrowser1.Navigate("http://lishi.tianqi.com/haerbin/index.html");  
  4.           webBrowser1.AllowWebBrowserDrop = false;//将 WebBrowser 控件的 AllowWebBrowserDrop 属性设置为 false,以防止 WebBrowser 控件打开拖放到其上的文件。  
  5.           webBrowser1.IsWebBrowserContextMenuEnabled = false;//将该控件的 IsWebBrowserContextMenuEnabled 属性设置为 false,以防止 WebBrowser 控件在用户右击它时显示其快捷菜单.  
  6.           webBrowser1.WebBrowserShortcutsEnabled = false;//将该控件的 WebBrowserShortcutsEnabled 属性设置为 false,以防止 WebBrowser 控件响应快捷键。  
  7.           webBrowser1.ScriptErrorsSuppressed = true;//将该控件的 ScriptErrorsSuppressed 属性设置为 true,以防止 WebBrowser 控件显示脚本代码问题的错误信息。  
  8.       }  

2.加载网页后Form窗体显示效果如图:


3.用狐火浏览器打开网页查看元素,找到浮动广告元素和右下角的广告ID和url,如图:



4.在webBrowser1_DocumentCompleted事件即web浏览器控件中承载的文档全部加载后发生的事件添加如下代码:

[csharp] view plain copy
  1. private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)  
  2.         {  
  3.             HtmlElementCollection hec = webBrowser1.Document.GetElementsByTagName("iframe");  
  4.             // 屏蔽对联浮动广告  
  5.             foreach (HtmlElement he in hec)  
  6.             {  
  7.                 he.Style = "display: none;";  
  8.             }  
  9.             // 屏幕右下角广告  
  10.             hec = webBrowser1.Document.GetElementsByTagName("script");  
  11.             foreach (HtmlElement he in hec)  
  12.             {  
  13.                 if (he.GetAttribute("src") == "http://cnrdn.com/But5")  
  14.                 {  
  15.                     he.SetAttribute("src""");  
  16.                 }  
  17.             }  
  18.             if (webBrowser1.Document.GetElementById("yigao_x") != null)  
  19.             {  
  20.                 webBrowser1.Document.GetElementById("yigao_x").Style = "display: none;";  
  21.             }  
  22.         }  

5.最后效果如图:

原创粉丝点击