失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Curl 采摘乱码与采集不到 PHP

Curl 采摘乱码与采集不到 PHP

时间:2021-01-05 05:14:02

相关推荐

Curl 采摘乱码与采集不到 PHP

后端开发|php教程

nbsp,Curl,data,substr,CURLOPT

后端开发-php教程

Curl 采集乱码与采集不到 PHP

PHP程序是用gbk2312编码的:

织梦网站装修公司源码,vscode如何快速下载,Ubuntu不熟pxe,tomcat+环境变更,爬虫游戏代理,php 数组去掉key,上海谷歌seo多少钱,学生信息管理网站,汇成网站模板lzw

<?php

$url = “”;//gbk2312编码

//$url = “”;//gbk2312编码

//$url = “”;//gbk2312编码

vip视频接口源码,Ubuntu的swap放,tomcat错误代码大全,爬虫推荐价格,php处理大数据并发,seo拓词软爱站seolzw

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER , true);//返回获取的输出的文本流

$ret = curl_exec($ch);

curl_setopt($ch, CURLOPT_TIMEOUT, 1);

curl_close($ch);

echo $ret;

微信表白网页源码,vscode键盘输入无反应,ubuntu rom下载,tomcat 首页重定向,爬虫pythonqq音乐,php new java,天津seo优化公司排行榜lzw

?>

在采集时,是正常的,但是采集时是为空的,采集时是丢码的.

这是怎么回事呢?如何解决?有哪位怎么呀?先谢谢了!!!没多少分了,不好意思。

——解决方案——————–

别的不说,我就是来拿分的.楼主记得给全分

$curl=curl_init(\);

curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);

curl_setopt($curl,CURLOPT_USERAGENT,Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322));

$html=curl_exec($curl);

var_dump($html);

$curl=curl_init(\);

curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);

curl_setopt($curl,CURLOPT_USERAGENT,Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322));

$html=curl_exec($curl);

//$html=strstr($html,<);

$html=gzdecode($html);

var_dump($html);

function gzdecode($data) {

$len = strlen($data);

if ($len < 18

------解决方案--------------------

strcmp(substr($data,0,2),"\x1f\x8b")) {

return null; // Not GZIP format (See RFC 1952)

}

$method = ord(substr($data,2,1)); // Compression method

$flags = ord(substr($data,3,1)); // Flags

if ($flags & 31 != $flags) {

// Reserved bits are set -- NOT ALLOWED by RFC 1952

return null;

}

// NOTE: $mtime may be negative (PHP integer limitations)

$mtime = unpack("V", substr($data,4,4));

$mtime = $mtime[1];

$xfl = substr($data,8,1);

$os = substr($data,8,1);

$headerlen = 10;

$extralen = 0;

$extra = "";

if ($flags & 4) {

// 2-byte length prefixed EXTRA data in header

if ($len - $headerlen - 2 < 8) {

return false; // Invalid format

}

$extralen = unpack("v",substr($data,8,2));

$extralen = $extralen[1];

如果觉得《Curl 采摘乱码与采集不到 PHP》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。