HttpWebRequest Google.com的问题

时间:2013-08-31 08:34:44

标签: c# httpwebrequest web-scraping

我有一个在Google上搜索的C#应用​​程序。几次点击后,我看到验证码消息。

要解决此问题,我打开Internet Explorer,转到同一页面,我也会看到验证码。我完成了那个,然后,一切都很好;显示搜索结果。

但是在我的c#应用程序中,当我点击相同的URL时,我仍然看到验证码。为什么会这样,我怎么能绕过它呢?我很困惑,因为我已经完成了验证码(使用IE),所以为什么我会在c#的下一次点击中再次看到它而不是从浏览器中看到它!

我只需要指出正确的方向,或者一些想法或建议。

2 个答案:

答案 0 :(得分:0)

我不知道Google是如何做到这一点的,但我看过网站会根据以下情况跟踪您使用它们的频率:

  1. IP地址
  2. 用户代理字符串
  3. 缓存
  4. 你可以欺骗2号,所以它与Internet Explorer中的相同,以防它通过它。

    我认为3号很容易检查,如果有cookie,你可以发送它。

答案 1 :(得分:0)

谷歌希望阻止其他人通过他们自己的应用程序发送请求,没有广告,.......也许这就是攻击,你有两个选择:1。你的应用程序应该像浏览器一样运作,例如修改User-Agent和cookies。 2.联系谷歌为您提供API。我确定谷歌出于这个原因提供API,但我没有更多详细信息。