您现在的位置是:网站首页>>PHP>>php
php 抓取数据(爬虫)
发布时间:2018-08-20 14:30:59作者:wangjian浏览量:525点赞量:0
/**
* Created by PhpStorm.
* User: wj
* Date: 2018/8/20
* Time: 13:51
*/
namespace app\controllers;
use yii\web\Controller;
class GrabController extends Controller
{
public $layout = false;
public $enableCsrfValidation = false;
public function actionIndex(){
$url = 'https://www.baidu.com';
$content = $this->crul($url);//获取到百度的网页信息
$html = $this->get_tag_data($content,'a','class','mnav');//获取指定标签的信息
var_dump($html);
}
//$html-被查找的字符串 $tag-被查找的标签 $attr-被查找的属性名 $value-被查找的属性值
public function get_tag_data($html,$tag,$attr,$value){
$regex = "/(.*?)/is";
preg_match_all($regex,$html,$matches,PREG_PATTERN_ORDER);
return $matches[1]; //返回值为数组 查找到的标签内的内容
}
/**
*[crul 获取指定连接的html信息]
* @author wangjian
* @version [0.1]
* @date 2018/8/20
*/
public function crul($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
//参数为1表示传输数据,为0表示直接输出显示。
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//参数为0表示不带头文件,为1表示带头文件
curl_setopt($ch, CURLOPT_HEADER,0);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
}
0
+1