Home  >  Article  >  Backend Development  >  php 抓取图片

php 抓取图片

WBOY
WBOYOriginal
2016-06-23 13:40:04873browse

<?php/** * Created by PhpStorm. * Date: 15-2-9 * Time: 下午3:10 */for($i=0;$i<1000;$i++){    $getData['page'] =  $i+1;    getImg($getData);}function getImg($getData){    $path = "D:/NFS/img/";    $opts = array(        'http'=>array(            'method'=>"GET",            'timeout'=>3,//设置3秒等待        ),    );    if(is_array($getData) && !empty($getData))    {        $ser = http_build_query($getData, '', '&');    }    $cnt=0;   //如果请求失败 继续请求3次    while($cnt<3 && ($file=file_get_contents("http://sexy.faceks.com/?{$ser}", false, stream_context_create($opts)))===FALSE) $cnt++;    preg_match_all("/\<img .*?src\=\"(.*?)\"[^ alt="php 抓取图片" >]*>/i", $file, $matches);    if(empty($matches[0]) || empty($matches[1]))    {        echo "not img...";die;    }    $imgs=array_unique($matches[1]);    foreach($imgs as $k=>$img)    {        $filename = $path.time().$k.".jpg";        getImage($img,$filename);    }}/** * @param string $url * @param string $fileName * 保存图片 */function getImage($url = '', $fileName = ''){    var_dump($fileName);    $ch = curl_init();    $fp = fopen($fileName, 'wb');    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_FILE, $fp);    curl_setopt($ch, CURLOPT_HEADER, 0);    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);    curl_setopt($ch, CURLOPT_TIMEOUT, 60);    curl_exec($ch);    curl_close($ch);    fclose($fp);}


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn