屏蔽您的网络抓取活动看起来像普通的浏览器浏览活动?

Dis*_*ive 5 c# web-scraping html-agility-pack

我正在使用Html Agility Pack并且我一直收到此错误."远程服务器返回错误:(500)内部服务器错误." 在某些页面上.

现在我不确定这是什么,因为我可以使用Firefox来访问这些页面而没有任何问题.

我有一种感觉,网站本身就是阻止而不是发送回复.有没有办法让我的HTML敏捷包调用更像是从FireFox调用的调用?

我已经在那里设置了一个计时器,所以它每20秒只发送一次网站.

我还可以使用其他任何方法吗?

gou*_*uki 6

设置类似于常规浏览器的User-Agent.用户代理是http客户端(浏览器)传递的http标头,用于向服务器标识自己.


bka*_*aid 6

服务器有很多方法可以检测到刮擦,它实际上只是刮刀和刮刀之间的军备竞赛(?),这取决于一方或另一方想要访问/保护数据的程度.一些可以帮助您不被发现的事情是:

  1. 确保发送的所有http标头与普通浏览器相同,尤其是用户代理和网址引用.
  2. 按照浏览器的顺序,像普通浏览器一样下载所有图像和CSS脚本.
  3. 确保所有设置的cookie随每个后续请求一起发送
  4. 确保根据网站robots.txt限制请求
  5. 确保您没有关注任何不跟随链接,因为服务器可能正在设置蜜罐,他们停止提供您的IP请求
  6. 获取一堆代理服务器以改变您的IP地址
  7. 确保该网站尚未开始向您发送验证码,因为他们认为您是一个机器人.

同样,列表可以继续,具体取决于服务器设置的复杂程度.