php使用三个方法采集信息

一、通过post请求获取内容

1、curlPost —- post请求方法

2、$url —- 请求的地址

3、$post_data —-请求时传递的参数

($post_data 一般为json格式的字符串)

4、$isHttps —- 请求地址经过https验证

(默认为false,需经过https验证;若有true,不需要经过验证)

function curlPost($url,$post_data,$isHttps = false){
    //初始化
    $curl = curl_init();

    //设置抓取的url
    curl_setopt($curl, CURLOPT_URL, $url);

    //设置头文件的信息作为数据流输出
    //curl_setopt($curl, CURLOPT_HEADER, 1);

    //设置获取的信息以文件流的形式返回,而不是直接输出。
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    if($isHttps == true){
        // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
        // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
    }

    //设置post方式提交
    curl_setopt($curl, CURLOPT_POST, 1);

    //post数据
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);

    //执行命令
    $data = curl_exec($curl);

    //关闭URL请求
    curl_close($curl);

    //显示获得的数据
    return $data;
}

二、通过get请求获取内容

1、curlGet —- get请求方法

2、$url —- 请求的地址

3、$isHttps —- 请求地址经过https验证

(默认为false,需经过https验证;若有true,不需要经过验证)

```
function curlGet($url,$isHttps = false){
    //初始化
    $curl= curl_init();

    //设置抓取的url
    curl_setopt($curl, CURLOPT_URL, $url);
    //设置获取的信息以文件流的形式返回,而不是直接输出。
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    curl_setopt($curl, CURLOPT_HEADER, 0);

    if($isHttps == true){
        // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
        // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 
    }

    //执行并获取HTML文档内容
    $data= curl_exec($curl);

    //释放curl句柄
    curl_close($curl);

    //返回数据
    return $data;
}

三、通过file_get_contents函数获取内容

file_get_contents() : 函数把整个文件读入一个字符串中。
详见具体使用方法

猜你喜欢

转载自blog.csdn.net/qq_42799116/article/details/81530859