curl抓取网页内容时的重定向和乱码解决

url=; ch = curl_init(); //初始化

// 设置选项,包括URL
curl_setopt( ch,CURLOPTURL, url);
//是否将参数返回到页面中(0表示是1表示否)
curl_setopt( ch,CURLOPTRETURNTRANSFER,1);curlsetopt( ch, CURLOPT_HEADER, 0);
curl_setopt( ch,CURLOPTUSERAGENT,Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.22(KHTML,likeGecko)Chrome/25.0.1364.172Safari/537.22);//1curlsetopt( ch, CURLOPT_ENCODING ,’gzip’); //gzip解析
curl_setopt( ch,CURLOPTFOLLOWLOCATION,1);//1使//HTML output = curl_exec( ch); info = curl_getinfo( ch);if( output === FALSE) {
echo “cURL Error: ” . curl_error(ch);//检查错误并输出  
}  
curl_close(
ch);
output=iconv("UTF8","GB2312//IGNORE", data) ;//转码,防止乱码
var_dump( info);vardump( output);

CURLINFO_EFFECTIVE_URL - 最后一个有效的URL地址
CURLINFO_HTTP_CODE - 最后一个收到的HTTP代码
CURLINFO_FILETIME - 远程获取文档的时间,如果无法获取,则返回值为“-1”
CURLINFO_TOTAL_TIME - 最后一次传输所消耗的时间
CURLINFO_NAMELOOKUP_TIME - 名称解析所消耗的时间
CURLINFO_CONNECT_TIME - 建立连接所消耗的时间
CURLINFO_PRETRANSFER_TIME - 从建立连接到准备传输所使用的时间
CURLINFO_STARTTRANSFER_TIME - 从建立连接到传输开始所使用的时间
CURLINFO_REDIRECT_TIME - 在事务传输开始前重定向所使用的时间
CURLINFO_SIZE_UPLOAD - 上传数据量的总值
CURLINFO_SIZE_DOWNLOAD - 下载数据量的总值
CURLINFO_SPEED_DOWNLOAD - 平均下载速度
CURLINFO_SPEED_UPLOAD - 平均上传速度
CURLINFO_HEADER_SIZE - header部分的大小
CURLINFO_HEADER_OUT - 发送请求的字符串
CURLINFO_REQUEST_SIZE - 在HTTP请求中有问题的请求的大小
CURLINFO_SSL_VERIFYRESULT - 通过设置CURLOPT_SSL_VERIFYPEER返回的SSL证书验证请求的结果
CURLINFO_CONTENT_LENGTH_DOWNLOAD - 从Content-Length: field中读取的下载内容长度
CURLINFO_CONTENT_LENGTH_UPLOAD - 上传内容大小的说明
CURLINFO_CONTENT_TYPE - 下载内容的Content-Type:值,NULL表示服务器没有发送有效的Content-Type:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值