Issue with StreamReader



我正在编写代码,我试图从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中有很多这样的标签集,这是没有问题的

你的两个函数都没有返回它们所读取的内容。我已经测试了第二个,它工作正常。

Sub Main
    Dim ret = getWebResourceData("http://viewdns.info/dnsreport/?domain=google.com")
    Console.WriteLine(ret.Length)
     ' Output = 21605
End Sub
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

相关内容

  • 没有找到相关文章

最新更新