cURL - 加载具有 CloudFlare 保护的站点

2022-08-30 18:16:17

我有一个想要使用cURL加载的网站。但是,我正在谈论的网站正在使用cloudflare保护。在cURL请求=>它说“检查你的浏览器,你将在5秒内被重定向”,我被重定向到不存在的页面,因为我认为我没有通过一些保护测试。

我一直在寻找我的答案很长一段时间,我只找到两个有用的链接:

链接 1

链接 2

但我仍然无法弄清楚。对我有什么帮助吗?


答案 1

这将是CloudFlare的“我处于攻击模式下” - >http://blog.cloudflare.com/introducing-im-under-attack-mode

如果您是网站的所有者,则应将您自己的IP地址列入白名单。如果您是该网站的访问者

1.)网站所有者在自己的网站上启用了该功能,在这种情况下,这是故意的,并且由于他们正在保护自己的网站或

2.)您加载网站过于频繁 - 并且您正在触发CloudFlare的DDOS保护。

p.s. 免责声明:我为CloudFlare工作。


答案 2

您可以通过在任何主要浏览器的开发人员工具下的网络部分中选择“复制为cUrl”来绕过攻击模式下。

这将复制所有必需的 cookie,以便您的 curl 可以“进行身份验证”。这些cookie持续多长时间,我会假设将取决于cloudflare。

旁注:卷曲必须在加载站点时使用的同一 IP 上运行。此外,对于任何真正的测试/开发环境,我会建议和/或phantomjs,它们是用于网站测试的更好且易于编写脚本的语言。

curl 'https://ilikeurls.net/ourpage.php?do=command' \
    -H 'Host: ilikeurls.net' \
    -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0' \
    -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
    -H 'Accept-Language: en-US,en;q=0.5' \
    -H 'Referer: https://ilikeurls.net/outpage.php' \                                                    
    -H 'Cookie: all required cookies will appear here' \
    -H 'Connection: keep-alive'\
    --compressed

虽然你最好使用硒或phantomjs来编写这些测试的脚本。


推荐