ASP.NET 抓取网页内容-WebBrowser 的 Navigated、DocumentCompleted 使用及区别

  • ASP.NET
    抓取网页内容-文字
  • ASP.NET
    抓取网页内容-图片
  • ASP.NET 抓取网页内容-Post
    数据
  • ASP.NET
    抓取网页内容-防止重定向
  • ASP.NET
    抓取网页内容-保持登入情况
  • ASP.NET 抓取网页内容-把当前会话带到 WebRequest
  • ASP.NET 抓取网页内容-如何转移来源 Referer 和
    UserAgent
  • ASP.NET 抓取网页内容-用 WebClient
    轻松完毕文件下载上传、网页抓取
  • ASP.NET 抓取网页内容-WebBrowser 的 Navigated、DocumentCompleted
    使用及界别

某些服务器禁绝了 WebRequest、WebClient 抓取网页,这个时候可用 WebBrowser
控件。

接触顺序

先触发 Navigated、再触发 DocumentCompleted。

  • Navigated 表示开首加载文书档案(不是指最初探访网页服务器);
  • DocumentCompleted 表示文书档案加载实现。

哪个能得到 WebBrowser 的 Document、DocumentText
和 DocumentStream 属性?

基于微软的布道,都能够拿走。但据书上说本身的测量试验,倘诺网页复杂,譬喻 iframe
多、HTML 长,那么唯有在 DocumentCompleted 且 WebBrowser 的 ReadyState 为
Complete(即全数网页加载完)时,才可以赢得完整的 HTML。

哪些获取 gb2312 编码的网页 HTML?

因为 .NET 是 UTF-8 的,所以对 gb2312 编码的网页,用 DocumentText
收取来是乱码,作者再试了,依据 Encoding 对 DocumentText
转变编码,仍然为乱码,用下边包车型大巴秘技解决:

using (StreamReader reader = new
StreamReader(webBrowser1.DocumentStream,
Encoding.GetEncoding(“gb2312”))) { textBox1.Text = reader.ReadToEnd(); }

网页有 iframe 框架,是或不是会频仍接触?

会,四个事件都会,通过事件参数 e.Url 能够肯定是主网页触发的只怕 iframe
触发的。

网页有 iframe 框架,每回触发
Navigated、DocumentCompleted 时,其 DocumentText 是主网页的,还是 iframe
框架网页的?

主网页的。

网页无 iframe 时事件是怎么着触发的? 

  • Navigated
  • DocumentCompleted(Complete)

里头 Complete 表示近来 WebBrowser 的 ReadyState。

网页有 iframe 时事件是如何触发的?

  • Navigated(主网页触发)
  • Navigated(框架网页 1 触发) ->
    DocumentCompleted(InteractiveState of Qatar(框架网页 1 触发)
  • Navigated(框架网页 2 触发) ->
    DocumentCompleted(Interactive卡塔尔(框架网页 2 触发)
  • DocumentCompleted(Complete卡塔尔国(主网页触发)

中间 Interactive、Complete 表示近年来 WebBrowser 的 ReadyState。

能够看看:框架网页触发时,DocumentCompleted 的 ReadyState 为
Interactive;整个网页加载成功触发时,ReadyState 为 Complete。

有关阅读

  • WebBrowser 的 DocumentCompleted
    说明

  • ASP.NET
    抓取网页内容-文字

  • ASP.NET
    抓取网页内容-图片
  • ASP.NET 抓取网页内容-Post
    数据
  • ASP.NET
    抓取网页内容-幸免重定向
  • ASP.NET
    抓取网页内容-保持登陆状态
  • ASP.NET 抓取网页内容-把近期会话带到 WebRequest
  • ASP.NET 抓取网页内容-怎样转移来源 Referer 和
    UserAgent
  • ASP.NET 抓取网页内容-用 WebClient
    轻易完成公文下载上传、网页抓取
  • ASP.NET 抓取网页内容-WebBrowser 的 Navigated、DocumentCompleted
    使用及界别

发表评论

电子邮件地址不会被公开。 必填项已用*标注