【发布时间】:2014-06-06 19:57:15
【问题描述】:
我正在编写代码,试图从在线 DNS 报告 (http://viewdns.info/dnsreport/?domain=google.com) 中获取 HTML,但我遇到了一些问题。我真正需要的 HTML 文件中的一行(第 231 行)是在大约 680 个字符后自行切断。但是,重要的行之后的所有行都正确读取。抓取 HTML 的代码如下所示,我尝试了两种不同的方式。 这是我尝试的第一种方式:
Public Function getWebResourceData(ByVal strURL As String) As String
Dim webClient As New System.Net.WebClient
Dim result As String = webClient.DownloadString("http://viewdns.info/dnsreport/?" & TextBox1.Text)
return result
End Function
这是第二个:
Public Function getWebResourceData(ByVal strURL As String) As String
Dim rt As String = ""
Dim wRequest As WebRequest
Dim wResponse As WebResponse
Dim SR As StreamReader
wRequest = WebRequest.Create(strURL)
wResponse = wRequest.GetResponse
SR = New StreamReader(wResponse.GetResponseStream)
rt = SR.ReadToEnd
SR.Close()
return rt
End Function
目前我真的不确定还有什么问题。我还尝试将结果保存到文本文件中以查看是否是问题所在,但这也是不正确的。我已经查看了字符串停止区域的十六进制代码,但没有任何异常。拆分发生在背靠背鳄鱼括号(显示为括号)之间:(/tr)(tr)
但是在整个 HTML 中有许多这样的标签集,它们没有问题。
【问题讨论】:
-
要确定是否是网站的问题(不太可能是 BCL),您是否尝试过完全阅读不同的网站?
-
这个问题在我正在测试的网站上继续发生:viewdns.info/dnsreport/?domain=google.com 无论你放入什么域
标签: vb.net streamreader webrequest webresponse