El mar, 23 nov 2021 a las 16:27, Héctor J. Benítez Corredera (< facturasxebo...@gmail.com>) escribió:
> Buenas desesperado de no encontrar una respuesta acudo a ustedes. > > > > Bien necesito extraer los comentarios de unos videos de Youtube y no me > vale la API de Google ya que es para una aplicación y bueno prefiero no > depender de dicha API. > > > > E estado buscando tanto en Github en las isos como por todo internet y no > doy con la clave. > > > > Se que yt-dlp permite extraer los comentarios de un video pero por más que > lo intento no lo consigo. > > > > Por lo que e estado leyendo usando la librería de manera aplicación así lo > obtendría: > > > > yt-dlp --write-comments --extractor-args > "youtube:comment_sort=top;max_comments=3;max_comment_depth=1" > --skip-download > > > > Bien lo que me interesa es realmente usarlo desde Python pero no encuentro > información por ninguna parte de como pasarle los parámetros para obtener > los comentarios en la devolución del JSON. > > > > Bien el obtener los datos del video lo hago así: > > > > import yt_dlp as youtube_dl > > url = "https://www.youtube.com/watch?v=HqGykxomWIc" > > opciones = {'ignoreerrors': True, 'quiet': True, 'extract_flat': > 'in_playlist', 'dump_single_json': True} > > with youtube_dl.YoutubeDL(opciones) as ydl: > > r = ydl.extract_info(url, download=False) > > print(r) > > > > Bien sé que con getcomments se obtienen pero por más que se lo pongo en > opciones y valor True no me devuelve los comentarios en el json. > > > > Esta librería yt-dlp la verdad que todavía no la domino y sigo > estudiándola pero estoy atrancado en esto y la verdad no encuentro > información y su documentación pues la verdad en Github me parece un poco > liosa más que cuando le doy en que se agrego la extracción de comentarios > no me da nada de información. > > > > Este el repo: > > > > https://github.com/yt-dlp/yt-dlp > > > > En definitiva que trae muchas cosas que la original Youtube.-dl no traía y > estoy más perdido… > > > > Muchas gracias a quien pueda echarme un poco de luz y a ser posible si > pudieseis ponerme un pequeño código de extracción de comentarios quedaría > agradecido. > > > > De nuevo y por adelantado mil gracias. > > > > Cordiales saludos > > > A veces, cuando no hay documentación, la documentación es el código. En el fichero YoutubeDL.py están las opciones que puedes usar. Entre otras, se ve que hay que usar la opción "getcomments" para extraer los comentarios, y que se debe usar la opción "writeinfojson" si queremos que se escriba a un fichero. En tu código, obtienes la información de vídeo o vídeos, pero falta el procesado posterior. Como no quieres descargar el vídeo, hay que usar la opción "skip_download". Todo junto: import yt_dlp as youtube_dl url = "https://www.youtube.com/watch?v=HqGykxomWIc" opciones = { 'ignoreerrors': True, 'quiet': True, 'extract_flat': 'in_playlist', 'dump_single_json': True, 'getcomments': True, 'writeinfojson': True, 'skip_download': True, } with youtube_dl.YoutubeDL(opciones) as ydl: r = ydl.extract_info(url, download=False) ydl.process_info(r) En realidad, ya habíamos indicado que no descargara el vídeo, por lo que se podría haber hecho en un sólo paso: with youtube_dl.YoutubeDL(opciones) as ydl: ydl.extract_info(url) -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": https://blog.ch3m4.org Buscador Python Hispano: http://busca.ch3m4.org <https://blog.ch3m4.org/pages/busqueda-python-es/>
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es