Vb.net webclient错误:尝试的自动重定向太多
这段代码以前运行得很好,但从昨天开始出现错误。 在阅读了许多类似的内容后,我认为我的问题是关于cookies的,所以我添加了一个CookieContainer,但我仍然得到相同的错误。 我的代码允许我从网站获取图片及其标题并显示它们,以下是我的代码:Vb.net webclient错误:尝试的自动重定向太多,vb.net,visual-studio,webclient,cookiecontainer,Vb.net,Visual Studio,Webclient,Cookiecontainer,这段代码以前运行得很好,但从昨天开始出现错误。 在阅读了许多类似的内容后,我认为我的问题是关于cookies的,所以我添加了一个CookieContainer,但我仍然得到相同的错误。 我的代码允许我从网站获取图片及其标题并显示它们,以下是我的代码: 表格1: Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click Dim websiteURL1 As String = "http
表格1:
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
Dim websiteURL1 As String = "http://www.gamestop.com/collection/upcoming-video-games"
Class1.getPics(websiteURL1, "<img src=""(?<Data>[^>]*)""><p>(?<Dataa>[^>]*)<br>")
Me.AutoScroll = True
End Sub
CookieContainer网络客户端类: Imports System.Net
Imports System.Text.RegularExpressions
Public Class CookieAwareWebClient
Inherits WebClient
Private cc As New CookieContainer()
Private lastPage As String
Protected Overrides Function GetWebRequest(ByVal address As System.Uri) As System.Net.WebRequest
Dim R = MyBase.GetWebRequest(address)
If TypeOf R Is HttpWebRequest Then
With DirectCast(R, HttpWebRequest)
.CookieContainer = cc
If Not lastPage Is Nothing Then
.Referer = lastPage
End If
End With
End If
lastPage = address.ToString()
Return R
End Function
End Class
该网站确实添加了一个新功能,可以自动检测webclient位置(国家)并将其重定向到另一个网站,因此在我的情况下,我将webclient代理设置为美国,这样它就可以访问我想要的链接而无需重定向。 要添加代理设置,可以使用:
webclient1.Proxy = New WebProxy("YourProxyServerName", port)
例如
webClient.Proxy = New WebProxy("100.12.34.36", 8080)
以下是免费美国代理的列表:
webClient.Proxy = New WebProxy("100.12.34.36", 8080)