专栏首页技术博文php curl获取网页内容乱码和获取不到内容的解决方法

php curl获取网页内容乱码和获取不到内容的解决方法

1.如果用curl请求网页,多方网页使用了gzip压缩,那么获取的内容将有可能为乱码。

解决方法

$url = 'http://www.du52.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22");
curl_setopt($ch, CURLOPT_ENCODING ,'gzip'); //加入gzip解析
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

var_dump($info);
var_dump($output);

2.如果请求的网页发生了重定向,通过header('Location: du52.com'),那么请求的网页数据有可能为空,即获取不到内容。

解决方法

$url = 'http://www.mkv8.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION ,1); //加入重定向处理
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

var_dump($info);
var_dump($output);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 微信公众平台开发

    <?php header('Content-Type: text/html; charset=UTF-8'); //_reply_customer("o2n...

    joshua317
  • curl参数

    目录 1. 介绍 2. curl扩展的安装 3. curl_init 4. curl_setopt 5. cur...

    joshua317
  • PHP Problem with the SSL CA cert (path? access rights?)

    开发遇到问题,直接使用系统的curl命令正常,使用php的curl模块报错 错误:PHP Problem with the SSL CA cert (path?...

    joshua317
  • 微信小程序开发-注册账号

    微博登录原理,简单介绍一下,通过特定网址携带固定参数,发起请求登录,之后通过回调地址,获取code值,通过code值获取access_token值和uid值,通...

    申霖
  • 同源政策与跨域请求

    1995年,同源政策由 Netscape(网景) 公司引入浏览器。目前,所有浏览器都实行这个政策。

    章鱼喵
  • 腾讯云图床api php

    flyxber
  • java开发工程师有前途嘛?

    JAVA工程师专业是一门技术含金量比较重的一门专业,那么JAVA工程师专业有前途吗?今天我看到还是有人在质疑,他说“现在java开发工程师前途何在,到...

    程序员互动联盟
  • 本周(5.13-5.19)百度再次领投小鱼在家 | 投融资汇总

    镁客网
  • AkShare-疫情数据-CSSE数据

    本次在 COVID-19 原有接口的基础上增加:美国约翰·霍普金斯大学系统科学与工程中心(JHU CSSE)收集各国卫生机构公开 2019-2020 年新型冠状...

    AkShare
  • 具体数学-第11课(Stern-Brocot树和同余关系)

    开始走到它所在的结点。如果向左走就记为L,向右走记为R,最终可以得到一个L和R的序列。例如

    godweiyang

扫码关注云+社区

领取腾讯云代金券