2015-09-02 27 views

Antwort

13

YouTube speichert viele verschiedene Arten von Thumbnails auf seinem Server für verschiedene Geräte. Sie können darauf zugreifen, indem Sie die Video-ID verwenden, die jedes YouTube-Video hat. Sie können die Bilder auf Ihrer Website mit einer Variablen $link anzeigen, die die ID des Videos enthält und sie an Stelle der Video_ID im Link durch ersetzt.

Niedrige Qualität Miniaturbild:

http://img.youtube.com/vi/<YouTube_Video_ID_HERE>/sddefault.jpg 

mittlere Qualität Miniaturbild:

http://img.youtube.com/vi/<YouTube_Video_ID_HERE>/mqdefault.jpg 

Hochwertige Miniatur:

http://img.youtube.com/vi/<YouTube_Video_ID_HERE>/hqdefault.jpg 

Maximale Qualität Thumbnail:

http://img.youtube.com/vi/<YouTube_Video_ID_HERE>/mqdefault.jpg 

Beispiel:

Wenn Sie die Miniaturansicht des folgenden Video zugreifen möchten:

https://www.youtube.com/watch?v=Q-GYwhqDo6o 

Video ID: Q-GYwhqDo6o

Also, das ist, wie Video-Thumbnail Link wie folgt aussieht:

http://img.youtube.com/vi/Q-GYwhqDo6o/mqdefault.jpg 

Ich hoffe, es hilft. Viel Spaß beim Programmieren.

+0

Vielen Dank geholt wird. Es funktionierte. – Mat

+0

Gern geschehen. –

-1

Google hat die API auf Version 3 geändert und der Code von Python funktioniert genau! Sie können für PHP verwenden.

def get_small_image_url(self): 
    return 'http://img.youtube.com/vi/%s/%s.jpg' % (self.video_id, random.randint(1, 3)) 

def get_hqdefault(self): 
    return 'http://i1.ytimg.com/vi/%s/hqdefault.jpg' % self.video_id 

def get_mqdefault(self): 
    return 'http://i1.ytimg.com/vi/%s/mqdefault.jpg' % self.video_id 

def get_sddefault(self): 
    return 'http://i1.ytimg.com/vi/%s/sddefault.jpg' % self.video_id 

def get_video_id(self, url): 
    link = urlparse.urlparse(url) 
    if link.hostname == 'youtu.be': 
     return link.path[1:] 
    if link.hostname in ('www.youtube.com', 'youtube.com'): 
     if link.path == '/watch': 
      state = urlparse.parse_qs(link.query) 
      return state['v'][0] 
     if link.path[:7] == '/embed/': 
      return link.path.split('/')[2] 
     if link.path[:3] == '/v/': 
      return link.path.split('/')[2] 
    return False 

def get_meta(self, video_id): 
    api_token = **'here your API_Token'** 
    url = 'https://www.googleapis.com/youtube/v3/videos?part=snippet&id=%s&key=%s' % (video_id, api_token) 
    response = json.load(urllib.urlopen(url)) 
    print response 
    context = { 
     'title': response['items'][0]['snippet']['localized']['title'], 
     'desc': response['items'][0]['snippet']['localized']['description'] 
    } 
    return context 

def save(self, force_insert=False, force_update=False, using=None, 
     update_fields=None): 
    video_id = self.get_video_id(self.url) 
    meta = self.get_meta(video_id) 
    self.video_id = video_id 
    self.title = meta['title'] 
    self.description = meta['desc'] 
    super(Videos, self).save(
     force_insert=force_insert, 
     force_update=force_update, 
     using=using, 
     update_fields=update_fields 
    ) 
1

qualitativ hochwertiges Bild erhalten Sie die folgende URL verwenden können, die von YouTube API

$video_id = explode("?v=", $link); 
$video_id = $video_id[1]; 
$thumbnail="http://img.youtube.com/vi/".$video_id."/maxresdefault.jpg"; 
Verwandte Themen