|  在技术加营销的道路上越走越远
温馨提示
我是弹窗内容
当前位置:首页 > PHP经验积累 > PHP使用curl抓取微信封面图的代码
PHP使用curl抓取微信封面图的代码

PHP使用curl抓取微信封面图的代码

日期:2021-06-29 浏览量:173 原创作者:湖八爷
我之前分享过两篇文章,教大家怎么获取微信公众号的封面图片。

一篇是成品软件版,微信公众号封面获取软件,大家可以下载软件直接使用;另外一篇是手动操作版本

然后就有同学私信问我能不能把代码分享出来?所以今天这篇文章就给大家分享一下PHP版的抓取微信公众号封面图的代码。


废话不多说,直接看代码,写的不好的地方,希望大佬们能指出来。


//首先写一个下载图片的函数

function download_img($url = "", $filename = "") {

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');

    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

    curl_setopt($ch, CURLOPT_URL, $url);

    ob_start();

    curl_exec($ch);

    $return_content = ob_get_contents();

    ob_end_clean();

    $return_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    if($return_code == 200){

        $fp= @fopen($filename, "a"); //将文件绑定到流

        fwrite($fp, $return_content); //写入文件

        return true;

    }else{

        return false;

    }

}


$url = 'https://mp.weixin.qq.com/s/QGIThgsRmDxT9WD29lBsuw';//这里就是需要获取的目标微信公众号的文章链接

$content = file_get_contents($url);

preg_match_all("/.*?msg_cdn_url = "(.*?)"/", $content, $result);

$imgurl = $result[1][0];

$suffix = explode('=',$imgurl);

$path = './public/wximages/';

if(!is_dir($path)){

    mkdir($path, 0777, true);

}

$res = download_img($imgurl, $path.time().'.'.$suffix[1]);//下载获取到的封面图

if($res){

    echo '图片下载成功!';

}else{

    echo '图片下载失败!';

}