HttpRequest 抓某宝搜索页面数据 出现验证码

nicaiwa 2016-03-14 09:08:41
求大神解救,已经2个多月了,程序通过抓某宝搜索页面数据,通过winform程序,HttpRequest 方式抓,时不时会返回验证码,但是ie浏览器打开又没有弹,程序返回里又有,请问我是哪里做错了!

或则说如何能避免验证码请大神解救! 以下是我的 HttpRequest 请求数据的代码

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
//声明一个HttpWebRequest请求
request.Timeout = 30000;
request.Accept = "*/*";
request.UserAgent = Tools.UserAgent;
if (string.IsNullOrEmpty(Tools.UserAgent))
request.UserAgent = "Mozilla/5.0";
request.KeepAlive = true;
if (!string.IsNullOrEmpty(cookie))
{
request.Headers[HttpRequestHeader.Cookie] = cookie;
}
//设置连接超时时间
//request.Headers.Set("Pragma", "no-cache");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream streamReceive = response.GetResponseStream();
StreamReader streamReader = new StreamReader(streamReceive, encode);
strResult = streamReader.ReadToEnd();
streamReader.Dispose();
streamReceive.Dispose();
response.Close();
...全文
663 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
抓取的频率太频繁了 它们肯定会有相应的检测
nicaiwa 2018-08-16
  • 打赏
  • 举报
回复
引用 4 楼 lrcgg 的回复:
大神,想问你关于亿赛通的事情,能留下可留的联系方式吗
qq2422122600
失落的神庙 2018-06-23
  • 打赏
  • 举报
回复
某宝数据采集快了是会这样。只有用代理ip才行
nry19871012 2018-06-21
  • 打赏
  • 举报
回复
无非让程序模仿人的行为。所以不能太快。
DF-SKy 2018-06-21
  • 打赏
  • 举报
回复
过于频繁的访问 就会出现验证码 不管你是手动还是通过模拟请求
如果你想避开这个验证码 你应该 频繁测试 就是测试出 大概多久内访问多少次是正常 比如说一分钟 最多30次 超过就会出现验证码
这时候 你就应该让你的程序 一分钟 至多访问30次 来绕开这个验证
如果 你想输入这个验证码 那你就直接弹出来 不过你走的是协议
淘宝的这个滑块验证码分析起来 会很吃力
lrcgg 2018-06-16
  • 打赏
  • 举报
回复
大神,想问你关于亿赛通的事情,能留下可留的联系方式吗
圣殿骑士18 2018-06-16
  • 打赏
  • 举报
回复
访问太频繁。而你手工网页访问不可能出现太频繁的问题
nry19871012 2016-03-14
  • 打赏
  • 举报
回复
频繁访问是会出验证的。
socg 2016-03-14
  • 打赏
  • 举报
回复
可能IE设置了弹出窗口拦截
qq_28053691 2016-03-14
  • 打赏
  • 举报
回复
只要在网页中能正常运行 用winfrom那不是很简单? winform嵌入网页 登陆后获得cookie 用登陆cookie去请求登陆后需要抓取的请求 就能得到想要的数据

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧