.net - 为什么 HttpWebRequest 和 WebBrowser 获得不同的 HTML 源代码?

标签 .net vb.net httpwebrequest browser

我正在尝试从网页获取源代码。 WebBrowser 控件为我提供了我正在寻找的信息。但是,我想使用 HttpWebRequest,但它提供的源代码与 WebBrowser DocumentText 不同。

谁能告诉我如何使用 HttpWebRequest 获得与 WebBrowser 相同的源代码?

网络浏览器代码:

WebBrowser1.Navigate("http://www.networksolutions.com/whois/results.jsp?domain=" & txtUrl.Text)
textbox1.Text = WebBrowser1.DocumentText

网络浏览器结果:

http://textbin.com/f4368

HttpWebRequest 代码:

Dim request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url)
request.KeepAlive = False
request.Timeout = 10000

Dim response As System.Net.HttpWebResponse = request.GetResponse()

Dim sr As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream())
Dim sourcecode As String = sr.ReadToEnd()

HttpWebRequest 结果:

http://textbin.com/2h445

最佳答案

某些网站会查看用户代理字符串或其他因素,并返回基于此而变化的内容。我编写了许多下载网页的项目,并且遇到过几次这种情况。

关于.net - 为什么 HttpWebRequest 和 WebBrowser 获得不同的 HTML 源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4573307/

相关文章:

c# - Assembly.GetTypes() 返回奇怪的类型名称,例如 "<>c"

.net - 联合安全 - 单独的 SSL 和 RP 证书(.NET 4.5 和 WIF)

.net - 在 CheckBox 的 CheckChanged 事件中使用 e 作为 System.EventArgs

c# - 预测加密字符串的长度

vb.net - 如何在 Pi 上显示来自 USB 的随机图像

C# JSON 解析与子字符串

powershell - 通过 HTTP 上传大文件

css - 缩略图上的文字

.net - 属性 setter 中 Interlocked.Exchange 的简写

c# - HttpWebRequest 对每个主机 2 个连接的限制是否适用于 HttpClient?