php 抓取图片

开发技术 作者: 2024-07-27 21:50:01
php 抓取图片

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。

编程之家小编现在分享给大家,也给大家做个参考。

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);
}

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_51911.html
php 抓取图片