php 抓取圖片

ef4w 10年前發布 | 1K 次閱讀 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}&quot;, 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>

 本文由用戶 ef4w 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!