您的位置:首页 > 编程语言 > PHP开发

php 抓取图片

2015-02-09 17:18 197 查看
<?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);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: