Heim >Backend-Entwicklung >PHP-Tutorial >php 抓取图片
<?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);}