当前位置:Gxlcms > PHP教程 > 采集遇到一个怪异有关问题

采集遇到一个怪异有关问题

时间:2021-07-01 10:21:17 帮助过:47人阅读

采集遇到一个怪异问题
目标地址 www.zhibo8.com

本地环境:windows xp + xmapp 1.7.7
file_get_contents 或者 curl 都没问题,首页面完全获取;

放到国外的服务器上,linux, Apache 2.0
file_get_contents 为空
curl 会和浏览器访问打开的不一致,内容少好多,但是结束标签是全的。

而且我用curl发送模拟浏览器的全部header也是一样不完整。

请大伙帮分析一下,可能存在的原因及如何解决,谢谢!

------解决方案--------------------
估计是linux环境的问题吧
我之前抓www.fblife.com也是windows下curl测试通过,但同样代码linux下就得不到完整的
这个网站我在Ubuntu9.10下CURL测试通过,可以抓取完整,不知道是不是你linux配置问题?
------解决方案--------------------
暂时木有。。。很纠结
说来奇怪,程序放到网站目录下,从浏览器访问程序文件抓取的信息很完整,linux,windows都可以,但是,linux后台抓取就是不行,怎么做都抓不全,我估计可能是linux配置的问题。楼主可以试一下wget命令
------解决方案--------------------
服务器的网络.访问国内的不行.这个是我的猜测.在国内主机上多半没问题
------解决方案--------------------
看看编码问题吧
$string = iconv('gb2312', 'utf-8//ignore', $string);
------解决方案--------------------
到国外的服务器上
file_get_contents 为空
可能未开放权限,也可能超时

curl 会和浏览器访问打开的不一致,内容少好多
那是一个纯中文网站,在国外看不到或看不全是很正常的。没有多少人能看懂中文
当然也与超时和curl支持库有关
------解决方案--------------------
这就是一种优越性
------解决方案--------------------
探讨

发现一个很悲催的问题,设置项太多了,就会出问题

function curl_file_get_contents($durl){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $durl);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNT……

人气教程排行