본문 바로가기

손안의세상/Tip

[검색엔진 만들기]YouTube API를 활용하여 동영상 검색엔진 만들기


온라인 동영상 공유 사이트로는 유튜브가 단연 독보적인 인기를 끌고 있습니다.
현재 viacom과 저작권과 관련하여 법정 다툼을 벌이고 있지만, 어떻게 결과가 나올지도 정말 기대가 되고 궁금합니다.

유튜브는 현재 동시대에 가장 많은 동영상을 보유한 사이트 입니다.
매일 새로 올라오는 동영상 수가 수십만 개에 이르며, 하루 페이지 조회 수만도 수십억 회에 이릅니다. 유튜브는 홈 동영상뿐만 아니라 음악 동영상, TV 쇼 클립, 개봉할 영화 예고편, 애니메이션 클립 등 온갖 동영상을 제공합니다. 사용자는 동영상에 키워드 태그를 추가할 수 있으며, 특정 시점에서 가장 인기 있는 동영상을 감상할 수도 있습니다.

유튜브가 제공하는 멋진 기능 중 하나가 유튜브 API 입니다.

YouTube API를 사용하여 언제 어느 화면에서든 YouTube 동영상을 볼 수 있습니다.

YouTube API를 사용하는 방법도 별로 어렵지 않습니다. 또한 데이터 검색 API를 사용할 경우 개발자 키도 필요가 없습니다.

PHP를 사용하고 계신다면, 검색엔진을 만들어 보는 것도 정말 쉽고 재미 있습니다.
또한 조금만 응용을 하면, 자신이 원하는 어느 페이지에도 동영상 검색엔진과 플레이어를 넣을 수 있습니다.

이번 시간에는 PHP에 동영상 검색엔진을 설치하는 방법에 대해 알아보도록 하겠습니다.

기존에 IBM에서 작성한 메뉴얼은 2007년에 작성한 v1.0으로서 현재 적용이 되질 않습니다.
그러므로 제가 직접 설치를 해보고 현재 적용가능한 방법을 살펴 보도록 하겠습니다.

1. PHP Client Library Download (v2.0)
ZEND Framework에서 Google's Data API에 접근할 수 있는 Zend Gdata package를 다운을 받습니다.
위의 링크에서 최신 버젼으로 다운을 받습니다.


2. PHP Client Library 압축해제와 업로드


Zend Gdata package를 압축해제를 하게되면,
폴더 안에서 YouTube API에 사용할 폴더만을 찾아서 업로드를 하여 줍니다.
demos >Zend >Gdata > YouTubeVideoBrowser 폴더를 사용합니다.

그외에도 Google's Data API에 접근할 수 있는 다른 데모들이 많이 있습니다.
YouTubeVideoBrowser 폴더 안에 Zend 폴더를 하위로 두고 업로드 하시면 됩니다.
저도 처음에는 사용을 어떻게 할줄 몰랐었는데, YouTubeVideoBrowser 폴더의 index.php를 살펴보니 Zend 폴더만을 필요로 하더군요.

그러면 YouTube API를 활용한 검색엔진이 됩니다.
정말 쉽죠!
http://movyx.com/search

3.YouTube data API Video App in PHP
위의 데모는 오직 검색엔진만 됩니다. 또 다른 Demo는 검색엔진 뿐만아니라 동영상을 업로드도 할 수 있습니다.
demos 폴더에서 YouTubeVideoApp 폴더를 사용합니다.
또한 개발자 키가 여기에서는 필요 하더군요.
그런데 저는 업로드에 별다른 관심을 가지지 못해서 정확히 알지는 못합니다.
그리고 제것 뿐만 아니라 유튜브에서 제공한 샘플에서도 오류가 자주나서 검색엔진으로만 활용을 합니다. 더 자세한 정보는 여기를 참조하세요

http://movyx.com/app

4. 자신만의 스타일로 변경하기

YouTubeVideoBrowser 폴더의 index.php, interface.html, video_browser.css, video_browser.js 를 자신만의 스타일로 수정하여 활용을 합니다.

YouTube API Terms of Service 내에서 수정을 하도록 합니다.

아래는 제가 시간날 때 위의 데모를 가지고 수정하여 보았습니다.
My YouTube Video Browser in PHP MOVYX | WordPress | XE | TEXTTUBE
아래 YouTube API에 대해 좀 더 디테일하게 학습을 하시게 되면, 자신이 원하는 스타일로 변경 가능하게 될 것입니다. 아래 링크들을 꼭 참조하세요.

5. YouTube API에 대해 더 자세하게 배우기

Programmer's ZEND Gdata Reference Guide
Developer's Guide: PHP
API Overview Guide
YouTube Player API
YouTube Data API
YouTube Data API : Thumbnail


현재 YouTube API를 응용해서 제작된 사이트들은 대부분 위의 library를 참조해서 만들어진
것으로 보여집니다. 관심이 있으신 분들은 도전해 보시길 권유합니다.

Who knows?

워드프레스 플러그인인 Tubepress의 매력에 반해서 제 블로그의 모든 글을 유튜브로 도배할 정도로 여기까지 오게 되었네요. 아마 계속해서 YouTube API를 학습할 것 같습니다.
그래서 앞으로는 유튜브 관련한 글들은 새롭게 도메인을 구입해서 옮겨 적을 계획입니다.