¿Cómo obtengo el título y la descripción de YouTube de una URL dada usando el código de Python?

¿Cómo obtengo el título y la descripción de YouTube del código python de la URL dada? ¿Es necesario usar la API de YouTube para ello? Estoy escribiendo un programa que necesita encontrar generar el título y la descripción de la URL dada

preguntado el 04 de julio de 12 a las 02:07

¿Dónde está exactamente la información originalmente? Puede usar fácilmente algún tipo de analizador HTML o expresión regular según el problema, pero es difícil averiguar qué es eso con la pregunta. ¿Está navegando por el sitio y desea descargar todas las descripciones y títulos? ¿Quieres poner una URL de un video y tomar eso? -

3 Respuestas

No lo es necesario, pero probablemente sea significativamente más rápido y más fácil que escribir uno propio.

Para más información, consulte la https://developers.google.com/youtube/1.0/developers_guide_python

Después de instalar el gdata módulo, prueba

import gdata.youtube
import gdata.youtube.service

yt_service = gdata.youtube.service.YouTubeService()

# authorize - you need to sign up for your own access key, or be rate-limited
# yt_service.developer_key = 'ABCxyz123...'
# yt_service.client_id = 'My-Client_id'

def PrintEntryDetails(entry):
    print 'Video title: %s' % entry.media.title.text
    print 'Video published on: %s ' % entry.published.text
    print 'Video description: %s' % entry.media.description.text
    print 'Video category: %s' % entry.media.category[0].text
    print 'Video tags: %s' % entry.media.keywords.text
    print 'Video watch page: %s' % entry.media.player.url
    print 'Video flash player URL: %s' % entry.GetSwfUrl()
    print 'Video duration: %s' % entry.media.duration.seconds

for entry in yt_service.GetTopRatedVideoFeed().entry:
    PrintEntryDetails(entry)

Respondido 04 Jul 12, 02:07

Ambas respuestas ya no funcionan, la primera porque la API V2 ya no está disponible, la otra porque el recurso de URL ya no está disponible.

Este es un código V3 que está funcionando:

from apiclient.discovery import build

DEVELOPER_KEY = 'your api key goes here'
youtube = build('youtube', 'v3', developerKey=DEVELOPER_KEY)

ids = '5rC0qpLGciU,LgbuxTfJFr0'
results = youtube.videos().list(id=ids, part='snippet').execute()
for result in results.get('items', []):
    print result['id']
    print result['snippet']['description']
    print result['snippet']['title'] 

Respondido 03 Oct 16, 08:10

Esto funcionó perfectamente para mí, después de crear una clave API usando la consola de desarrolladores de Google. - Chris Torrence

Si realmente desea escribir uno usted mismo sin que YouTube lo rastree con su clave de desarrollador, simplemente puede enviar una solicitud a:

https://gdata.youtube.com/feeds/api/videos/#{video_id}
https://gdata.youtube.com/feeds/api/videos/#{video_id}?alt=json

Como: https://gdata.youtube.com/feeds/api/videos/fcz_DYms4N4. Puede devolver XML, JSON o JSONP según sus necesidades.

Respondido 15 Feb 14, 21:02

Su enlace devuelve 404. - Casimir

Parece que Google cerró el acceso a la API no autenticado. - Casimir

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.