当前位置:
首页 > 技术 > php下载图片抓取图片方法

php下载图片抓取图片方法

该方法会应用到另外两个方法:

listDir [php查找目录下文件并生成目录]
GetSources [php 模仿百度蜘蛛post抓取页面或图片]

/**
* $url 图片地址
* $filepath 图片保存地址
* return 返回下载的图片路径和名称
*/
function downloadImages($filepath, $url, $UserAgent, $RefererUrl)
{
     if ($url == '') {
          return false;
     }

     $ext = Suffix($url);
     $ImgFormat = array('jpg', 'jpeg', 'png', 'gif', 'bmp'); //specified format
     if( strval(array_search($ext, $ImgFormat)) == '' )
     {
          return '<dd><i class="red">Image format is wrong:</i> '. $url .'</dd>';
     }

     //judge file is exist or not and automate generate file.
     listDir($filepath);
     // !is_dir($filepath)?mkdir($filepath):null;

     //assign random image name and add image suffix
     $filename = date("YmdHis", time()).rand(100,999).'.'.$ext;

     $img = GetSources($url, $UserAgent, $RefererUrl, false); //fetch image

     $fp = @fopen($filepath.'/'.$filename, 'a'); //open specify file
     fwrite($fp, $img); //write image to specified file
     fclose($fp);

     return '<dd><i class="green">Success:</i>'.$filepath.'/'.$filename.'</dd>';
}

/**
* 获取文件的后缀
*/
function Suffix($FileName) 
{ 
     return strtolower(trim(substr(strrchr($FileName, '.'), 1))); 
}

php下载图片抓取图片方法:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!