Lon*_*der 2 c# browser asp.net webbrowser-control iwebbrowser2
在我引用非.net内置之前(替代方案)
我想知道
.NetClasses可以提供使用:WebBrowser和WebBrowserBase课程
我想知道的是:这两者之间有什么区别?.
正如msdn在后一篇文章中提到的 - WebBrowserBase -
"此API支持.NET Framework基础结构,不能直接在您的代码中使用"
问题始于一个简单的任务:从网站检索文件(datasource xml).声音简单?所以你可以使用任何方法......,最好是最简单和资源最有效的方法.
但是!
场景是:相同的源(单一的可靠)最近阻止了自动流量,使用cookie,因为我可能低于WebClient使用主浏览器的相同资源(在我的情况下是IE9).
....经过我的研究,使用WebBrowser"引擎"作为文件检索器......
将完美地完成工作.
你可以使用任何(不仅仅是微软的IE)
关于我可以访问的其他测试:
http://seleniumhq.org/docs/03_webdriver.html
+
场景是,相同的源(单一的可靠)最近通过使用cookie来阻止自动流量
好吧,如果这是你的问题(cookies)为什么不试试这个网络客户端?
public class CookieWebClient : WebClient
{
private readonly CookieContainer _cookies = new CookieContainer();
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest request = base.GetWebRequest(address);
HttpWebRequest webRequest = request as HttpWebRequest;
if (webRequest != null)
{
webRequest.CookieContainer = _cookies;
}
return request;
}
}
Run Code Online (Sandbox Code Playgroud)
至于WebBrowser和WebBrowserBase之间的区别,WebBrowser继承WebBrowserBase以扩展它并使其成为一个功能齐全的Web浏览器.WebBrowserBase派上用场的地方在于,如果您希望自定义WebBrowser超出支持范围,您可以覆盖内容并使用WebBrowserBase来扩展功能等.作为一项规则,除非你绝对必须,否则你应该坚持只使用普通的WebBrowser控件 - 并且只有当你正在渲染网页或者想用它来骇人地执行javascript时.
我个人为webbrowser发现的最有用的修改之一是暴露了下载标志,因此你可以控制webbrowser是否下载图像等.这里有一个很好的例子:https://stackoverflow.com/一个/十八万四千七百四十六分之七百七十三万八千一百七十四
| 归档时间: |
|
| 查看次数: |
1046 次 |
| 最近记录: |