欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

抓取不到html,curl和file_get_contents都抓不到,但是页面可以直接打开。

程序员文章站 2022-05-22 14:47:08
...
抓取不到html,curl和file_get_contents都抓不到,但是页面可以直接打开。

请教

网址如下
https:/count.taobao.com/counter3?keys=SM_368_dsr-1097280647,ICCP_1_522177046867&callback=jsonp107

为什么我怎么都抓不到内容呢,始终是空


回复讨论(解决方案)

贴出你的代码来看看

$ch = curl_init();$url='https://count.taobao.com/counter3?keys=SM_368_dsr-1097280647,ICCP_1_522177046867&callback=jsonp107';curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);curl_setopt($ch, CURLOPT_HEADER, 0);$output = curl_exec($ch);curl_close($ch);echo  $output;

试试 curl 设置下 CURLOPT_USERAGENT,浏览器标识

$ch = curl_init();$url='https://count.taobao.com/counter3?keys=SM_368_dsr-1097280647,ICCP_1_522177046867&callback=jsonp107';curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);curl_setopt($ch, CURLOPT_HEADER, 0);$output = curl_exec($ch);curl_close($ch);echo  $output;


怎么取到这个4905,谢谢,在线等,马上结帖。
"ICCP_1_522177046867":4905

他不过是返回了一个供 jsonp 调用的函数:
jsonp107({"SM_368_dsr-1097280647":{v:0,nv:100,m_UFB:0,m:4.89661,m_g:20.15,s_UFB:0,s:4.8744,s_g:31.49,c_UFB:0,c:4.87867,c_g:39.55,gp:100.00,ss:290159,hdr:true},"ICCP_1_522177046867":4914});

截取圆括号中间的内容,用 json_decode 函数解码即可

他不过是返回了一个供 jsonp 调用的函数:
jsonp107({"SM_368_dsr-1097280647":{v:0,nv:100,m_UFB:0,m:4.89661,m_g:20.15,s_UFB:0,s:4.8744,s_g:31.49,c_UFB:0,c:4.87867,c_g:39.55,gp:100.00,ss:290159,hdr:true},"ICCP_1_522177046867":4914});

截取圆括号中间的内容,用 json_decode 函数解码即可



$arr = json_decode($response, false);
var_dump($arr);
结果$arr是Null

拿去玩吧,

更新:

敢不敢下次提问标题起个好点的名字,自己不会玩扯函数不行

ICCP_1_522177046867;?>