네이버 영상 썸네일 자동생성 방법
본문
위 스킨을 받아서 썸네일 가져오는 부분만 네이버꺼로 변경해서 적용해봤는데요...
list.skin.php
// 네이버 영상 썸네일을 가져올 함수 추가
if ( ! function_exists( 'get_movie_thumb' ) )
{
function get_movie_thumb( $movieid )
{
$xml = simplexml_load_file("https://tv.naver.com/oembed?url=https://tv.naver.com/v/".$movieid."&format=xml");
$movie_frame = $xml->html;
$movie_img = $xml->thumbnail_url;
return $movie_img;
}
}
// 네이버TV url 은 https://tv.naver.com/v/영상ID
$linkArr = explode('/', $list[$i]['link'][1]); // 등록된 링크에서 /로 구분해서 배열로 저장
$v = array_pop($linkArr); // 배열의 마지막 원소를 가져옴 < 영상ID
echo get_movie_thumb( $v );
작성된 코드인데... 썸네일이 출력이 안됩니다...;;
구글링으로 php parsing xml 관련된거 찾아보고 new SimpleXMLElement(~~~) 도 써보고 load_file 말고 load_string 이었나?? 그거도 써보고 했는데 다 안되더라구요...;;
echo 찍어보면 아예 빈값이구요... var_dump 로 쩍어보면 NULL 이 뜹니다...ㅠㅠㅠ
유튜브영상 등록시 자동으로 썸네일 생성되듯이, 네이버TV영상도 자동으로 썸네일 생성되게 하려면
어떤 식으로 불러와야 하나요??ㅠㅠㅠㅠㅠ
!-->답변 2
스킨은 아니지만, 제가 사용하던 소스 보여드릴게요
$url = "https://tv.naver.com/v/13832767"; // naver url
$video_info = json_decode(file_get_contents("https://tv.naver.com/oembed?url=".$url."&format=json"));
$title = $video_info->title;
$thumb_url = $video_info->thumbnail_url;
!-->
// 네이버 영상 썸네일을 가져올 함수 추가
if ( ! function_exists( 'get_movie_thumb' ) )
{
function get_movie_thumb( $movieid )
{
$url = "https://tv.naver.com/oembed?url=https://tv.naver.com/v/".$movieid;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($ch);
curl_close($ch);
$datas = json_decode($response);
return $datas->thumbnail_url;
}
}
echo get_movie_thumb( 13938869 );
curl로 하시면 됩니다.
!-->
답변을 작성하시기 전에 로그인 해주세요.