WebBrowser vs WebBrowserBase class



在我引用非.net内置(可选)之前

我想了解

内置的.Net类可以提供使用:

CCD_ 2&WebBrowserBase

我想知道的是:这两者之间有什么区别

正如msdn在后来的一篇文章中所指出的那样-WebBrowserBase-

"此API支持.NET Framework基础设施,不打算直接从代码中使用">

这个问题从一个简单的任务开始:从网站检索一个文件(datasourcexml)。听起来很简单?所以你可以使用任何方法。。。,最好是最简单的&资源高效型。

但是

场景是:同一个来源(可靠的单一来源)最近通过使用cookie阻止了自动流量,正如我所能理解的那样,WebClient正在使用您的主要浏览器的相同资源(在我的情况下是IE9)。

经过我的研究,使用WebBrowser"引擎"作为文件检索器。。。

将完美地完成这项工作。

你可以使用任何(不仅仅是微软IE)

关于我做的其他测试,你可以访问:

http://seleniumhq.org/docs/03_webdriver.html

+

https://code.google.com/p/selenium/downloads/list

您的问题

场景是,同一个来源(可靠的单一来源)最近通过使用cookie `阻止了自动流量

如果这是你的问题(cookie),你为什么不试试这个网络客户端?

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;
}
}

WebBrowser与WebBrowserBase

至于WebBrowser和WebBrowserBase的区别,WebBrowser继承了WebBrowserBase,对其进行了扩展,使其成为一个功能齐全的web浏览器。WebBrowserBase的用武之地是,如果您想自定义超出支持范围的WebBrowser,您可以覆盖某些内容,并使用WebBrowserBase来扩展功能等。作为一条规则,除非你绝对必须,否则你应该坚持只使用普通的WebBrowser控件——而且只有当你正在渲染网页或想用它来笨拙地执行javascript时。

浅谈WebBrowser的一般扩展

我个人发现的对网络浏览器最有用的修改之一是公开下载标志,这样你就可以控制网络浏览器是否下载图像等。如何做到这一点的一个很好的例子是:https://stackoverflow.com/a/7738174/184746

相关内容

  • 没有找到相关文章

最新更新