php网页抓取(guzzle方式为例,curl的使用方法有哪些?使用)
优采云 发布时间: 2021-12-09 22:31php网页抓取(guzzle方式为例,curl的使用方法有哪些?使用)
这里以guzzle方法为例,curl类似
要使用guzzle,需要先安装guzzle依赖。只需使用 composer 作为安装方法。此处不再赘述。
安装guzzle后,以下代码简单使用guzzle
一、直接请求
$client = new \GuzzleHttp\Client();
$response = new \GuzzleHttp\Psr7\Request('GET', "https://m.baidu.com");
// 获取头部信息
$header = $response->getHeaders();
// 获取html
$body = $response->getBody();
// echo $body;
// 转换为字符串
$stringBody = (string) $body;
//对结果过滤,取出class='title'的p标签内容,结果为数组格式的结果集
$tag = 'p';
$attr = 'class';
$value = 'title';
$html = $stringBody;
$regex = "/(.*?)/is";
preg_match_all($regex,$html,$matches,PREG_PATTERN_ORDER);
var_dump($matches[1]);
// 从body中读取10字节
$tenBytes = $body->read(10);
二、同时并发爬取
/is';
}
preg_match_all($regex,$html,$matches,PREG_PATTERN_ORDER);
return $matches[1];
}
guzzle的功能很强大,具体可以自己看文档