基于querylist下载新浪图片到本地

<?php
/**
 * Created by PhpStorm.
 * User: 11447474@qq.com
 * Date: 2018/6/30
 * Time: 14:19
 */

require 'vendor/autoload.php';

use QL\QueryList;

$url = 'http://www.sina.com.cn';
$reg = [
    'img' => array('img', 'src'),
];
$data = QueryList::Query($url, $reg)->data;
ini_set('date.timezone', 'Asia/Shanghai');
$filename = date("Ymdhis") . ".jpg";
$urls = [];
foreach ($data as $v) {
    foreach ($v as $value) {
        $urls[] = str_replace('//', 'http://', $value);
    }
}
$new_url = array();
$str = "n.sinaimg.cn";
foreach ($urls as $k => $v) {
    if (strpos($v, $str) != 0) {
        $new_url[] = $v;
    }
}


function download($url, $path = 'images/')
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    $file = curl_exec($ch);
    curl_close($ch);
    $filename = pathinfo($url, PATHINFO_BASENAME);
    $resource = fopen($path . $filename, 'a');
    fwrite($resource, $file);
    fclose($resource);
}


foreach ( $new_url as $url ) {
    download($url);
}

function dump($arr)
{
    echo '<pre>';
    var_dump($arr);
    echo '</pre>';
}

?>
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容