代码之家  ›  专栏  ›  技术社区  ›  HitmanHeathcote

WebRequest。GetResponse-远程服务器返回错误:(404)未找到

  •  1
  • HitmanHeathcote  · 技术社区  · 8 年前

    “系统”类型的例外。网系统中出现“WebException”。dll 但未在用户代码中处理

    附加信息:远程服务器返回错误:(404)未

    我的代码:

    OddsTodayREQUEST = WebRequest.Create("http://www.betexplorer.com/next/soccer/")
    Using OddsTodayRESPONSE As WebResponse = OddsTodayREQUEST.GetResponse()
                Using OddsTodayREADER As New StreamReader(OddsTodayRESPONSE.GetResponseStream())
                    OddsTodayHTML = OddsTodayREADER.ReadToEnd()
                End Using
            End Using
    
    2 回复  |  直到 8 年前
        1
  •  2
  •   Chase Rocker    8 年前

    该站点希望在请求中添加一个用户代理。你可以用谷歌搜索 What's my user agent? 要找到自己的并按如下方式添加:

    OddsTodayREQUEST.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)"
    
        2
  •  0
  •   Marcello Miorelli    6 年前

    您需要将UserAgent添加为 @ChaseRocker mentioned OddsTodayRESPONSE.GetResponseStream() Using 陈述

    Dim OddsTodayREQUEST As HttpWebRequest = WebRequest.Create("http://www.betexplorer.com/next/soccer/")
    OddsTodayREQUEST.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
    OddsTodayREQUEST.AutomaticDecompression = DecompressionMethods.GZip Or DecompressionMethods.Deflate 'Decompressing makes the request be done faster
    OddsTodayREQUEST.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0"
    Using OddsTodayRESPONSE As HttpWebResponse = OddsTodayREQUEST.GetResponse()
        Using OddsTodayRESPONSESTREAM = OddsTodayRESPONSE.GetResponseStream()
            Using OddsTodayREADER As New StreamReader(OddsTodayRESPONSESTREAM)
                OddsTodayHTML = OddsTodayREADER.ReadToEnd()
            End Using
        End Using
    End Using