php 抓取圖片
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\=\"(.?)\"[^>]*>/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); }</pre>