php curl突破cloudflare跳转保护进行采集

一个小采集程序无法运行了,打来原网站发现使用了cloudflare的保护服务。

经过一阵忙活让采集程序恢复了。

打开chrome查看跳转后的http信息,获取cookie字符串,如

__cfduid=df9ea159a1b1833b1d124576ec5ec682f1489310399; _popfired=1; cf_clearance=5f8173592071f4dad5c7b46702365fcf8249f214-1493185177-1800; sc_is_visitor_unique=rx10571718.1493186070.0CFEEEEFC3F4F5AA7A9719EC80CB35C.1.1.1.1.1.1.1.1.1

将该字符串复制到curl请求的header中

[php]
$header[]= 'Cookie:'.$cookie_str;
curl_setopt($ch,CURLOPT_HTTPHEADER,$header);
[/php]

需要注意的是ua需要和浏览器保持一致
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);

站内相关文章:

Comment ()
评论是一种美德,说点什么吧,否则我会恨你的。。。