首页 > 解决方案 > BestBuy 拒绝来自 ec2 实例的 curl

问题描述

嗯,情况就是这样,我想在 bestbuy.com 上出现某些内容时收到通知。Curl 用户代理一定已被列入黑名单,因为设置自定义用户代理会给我一个响应。

curl --user-agent 'do-it-to-it' --compressed https://www.bestbuy.com

但是我想在虚拟机上运行这个命令。上面的命令在我的本地机器上工作,但在 VM 上执行时它返回Access Denied.

左边的文件来自 EC2,右边的文件来自本地机器。您可以看到我从 EC2 获得了 HTTP 403。我只是不明白服务器正在捕获什么导致它拒绝来自我的 EC2 的请求,我在这里看到的主要区别是证书ca-bundle.crtcert.pem.

文件差异

标签: amazon-web-servicescurlamazon-ec2

解决方案


它很可能是分配给 Amazon EC2 的公共 IP 地址范围,这是公共知识。

许多网站不希望人们抓取他们的网站,并且由于大量网络抓取是从虚拟机完成的,他们选择阻止来自 Amazon EC2 实例的访问。

您应该使用BestBuy API


推荐阅读