我正在尝试使用vb.net HttpWebRequest来解析具有机器人保护的网站。
目前我的代码如下:
cookieContainer = New CookieContainer()
httpWebRequest = DirectCast(WebRequest.Create(urlbase & page), HttpWebRequest)
httpWebRequest.CookieContainer = cookieContainer
httpWebRequest.UserAgent = "Mozilla/6.0 (Windows; U; Windows NT 7.0; en-US; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.9 (.NET CLR 3.5.30729)"
webResponse = httpWebRequest.GetResponse()
result = New System.IO.StreamReader(webResponse.GetResponseStream(), System.Text.Encoding.[Default]).ReadToEnd()
但在回复中它说我被标记为机器人,提示我使用验证码来证明我不是。
它还指出:
“发生这种情况的可能原因:
你没有启用javascript或cookies
你有病毒,你的IP列在ProjectHoneypot中
您每秒向网站发出超过100个请求
您或您的电脑上的病毒伪造您的用户代理并伪装成搜索引擎“
我的ip不在projecthoneypot中列出,我每分钟不会超过1个请求。 所以我猜这个问题将是javascript& cookie或用户代理。