curl 리디렉션 되는 곳의 이미지

curl 리디렉션 되는 곳의 이미지

QA

curl 리디렉션 되는 곳의 이미지

답변 1

본문

아래는 이미지를 저장하는 소스입니다.

그런데 제가 이미지를 가져올 곳은 
https://source.unsplash.com/category/nature/1600x900
요 주소로 들어가면 리디렉션이 되면서 랜덤으로 이미지를 보여주는 곳입니다.

이런 경우... curl 을 어떻게 수정하여 저장할 수 있을지 모르겠습니다 



- - - - - - - - - - - - - -


function FileSave($FileLink, $Path){
    $PhotoInfo = pathinfo($FileLink);
    $PhotoName[] = md5($PhotoInfo['filename'])."_".time();
    $PhotoName[] = $PhotoInfo['extension'];
    $PhotoName = implode(".", $PhotoName);
    $Curl = curl_init();
    curl_setopt($Curl, CURLOPT_URL, $FileLink);
    curl_setopt($Curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, false); 
 curl_setopt($Curl, CURLOPT_SSL_VERIFYHOST, 0); 
    $Result = curl_exec($Curl);
    $FileSave = fopen($Path.$PhotoName, 'a');
    fwrite($FileSave, $Result);
    fclose($FileSave);
 return $PhotoName;
}
echo FileSave("가져올 이미지의 주소", G5_PATH."/");

이 질문에 댓글 쓰기 :

답변 1


function get_url($url)
{
    
    $ch=curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch,CURLOPT_HEADER,1);
    $result=curl_exec($ch);
    $code=curl_getinfo($ch,CURLINFO_HTTP_CODE);
    
    if($code!='404' && $result)
    {
        $tmp = explode("Location: ", $result);
        $tmp = explode("\n", $tmp[1]);
        $tmp = preg_replace('/\r\n|\r|\n/','',$tmp[0]);
        
        $new_url = $tmp;
        
        return $new_url;
    }
    curl_close($ch);
}

 

저는 이렇게 해서 최종 url 를 추출 합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #curl ×
전체 97
© SIRSOFT
현재 페이지 제일 처음으로