导航:首页 > 编程语言 > phpcurl采集不完整

phpcurl采集不完整

发布时间:2022-06-27 09:09:11

php curl 取不到数据 帮我看下 是为什么

有以下几种可能:

1、服务器端确实没有数据返回;

2、curl写错了;

3、试试下面这个,我在用的

functioncurl($url,$post='POST',$data=array()){
$ch=curl_init();
$headers[]="Accept-Charset:utf-8";
curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_CUSTOMREQUEST,$post);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);
curl_setopt($ch,CURLOPT_SSLVERSION,1);
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);

curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0(compatible;MSIE5.01;WindowsNT5.0)');
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_AUTOREFERER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

$result=curl_exec($ch);
curl_close($ch);
returnjson_decode($result,1);
}

❷ 这个页面不知道为什么采集不了希望php高手给写个php的curl的采集,我是新手就是想知道为什么。

解决这类问题需要研究浏览器控制台里的网络请求信息,建议使用火狐浏览器Firebug扩展
会比较方便一些。

关于此类问题的解决请参考我的博客《PHPcURL实现模拟登录与采集使用方法详解》
http://www.zjmainstay.cn/php-curl

补充:
测试代码如下,本地测试可以,阿里云测试失败。
怀疑网站有针对区域性ip做限制的情况,这种情况请试用代理实现采集。

<?php
$url='http://cx.xtbus.com:83/gpsSelectLineDirect.action?gps_line_id=0103&gps_line_name=33C2B7';
$ch=curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//返回数据不直接输出
curl_setopt($ch,CURLOPT_ENCODING,"gzip");//指定gzip压缩
$content=curl_exec($ch);//执行并存储结果
curl_close($ch);
echo$content;

❸ php curl如何读取一部分网页,而不是全部

可以用回调函数

❹ php抓取网页内容不完整

用CURL可以抓取到的 可能是你网速太慢超时了 所以抓取不完整 用 curl_setopt($ch, CURLOPT_TIMEOUT, 360) 试试看

❺ 想咨询下关于PHP的CURL采集的问题

摘要 1、开启curl支持

❻ 为什么我用php的curl获取到的数据不完整,无法获取列表全部数据

你好,一般有俩原因:
①接口本身数据不完整;
②接口中数据量过大,可以调整一下服务器配置,PHP配置文件:memory_limit 每个PHP页面所吃掉的最大内存

❼ php curl 采集问题

经对正则表达进行测试,获取数据正确:

❽ php curl 大量数据采集

这个需要配合js,打开一个html页面,首先js用ajax请求页面,返回第一个页面信息确定处理完毕(ajax有强制同步功能),ajax再访问第二个页面。(或者根据服务器状况,你可以同时提交几个URL,跑几个相同的页面)
参数可以由js产生并传递url,php后台页面根据URL抓页面。然后ajax通过php,在数据库或者是哪里设一个标量,标明检测到哪里。由于前台的html页面执行多少时候都没问题,这样php的内存限制和执行时间限制就解决了。
因为不会浪费大量的资源用一个页面来跑一个瞬间500次的for循环了。(你的500次for循环死了原因可能是获取的数据太多,大过了php限制的内存)
不过印象中curl好像也有强制同步的选项,就是等待一个抓取后再执行下一步。但是这个500次都是用一个页面线程处理,也就是说肯定会远远大于30秒的默认执行时间。

阅读全文

与phpcurl采集不完整相关的资料

热点内容
支持dsd硬解压声卡 浏览:768
怎么查看u盘加密区 浏览:181
台电加密是什么格式 浏览:155
php论坛版块在哪个文件夹 浏览:442
暗黑的服务器为什么维护 浏览:623
android内存溢出的原因 浏览:18
标志307的压缩比是多少 浏览:636
服务器启动为什么叫三声 浏览:997
追风筝的人英文pdf 浏览:940
解压小熊手机壳 浏览:346
成都市区建成面积算法 浏览:661
智能家居单片机 浏览:97
买男装用什么app好 浏览:855
文件夹合并了怎么拆开 浏览:260
波段副图源码无未来函数 浏览:89
livecn服务器地址 浏览:259
程序员这个工作真的很吃香吗 浏览:847
程序员和数学分析师待遇 浏览:681
压缩气弹簧怎么拆 浏览:325
华为公有云服务器添加虚拟ip 浏览:211