gdata Python client library for Google data APIs
API de Google. Vous pouvez rechercher des vidéos YouTube
pytube Github: ablanco/python-youtube-download
Télécharger des vidéos YouTube
Cherchons des vidéos de YouTube en utilisant gdata
# -*- coding: utf-8 -*-
#Si vous souhaitez effectuer une recherche en japonais, entrez la balise ci-dessus
from gdata import *
import gdata.youtube
import gdata.youtube.service
search_word = "chien" # chienの動画を検索
client = gdata.youtube.service.YouTubeService()
#Créer une requête de recherche
query = gdata.youtube.service,YouTubeVideoQuery()
query.vq = search_word #Rechercher un mot
query.start_index = 1 #Dans quelle vidéo rechercher
query.max_results = 10 #Combien d'informations vidéo souhaitez-vous obtenir
query.racy = "exclude" #S'il faut inclure la dernière vidéo
query.orderby = "relevance" #Quel genre d'ordre
#Effectuer une recherche et mettre le résultat dans le flux
feed = client.YouTubeQuery(query)
for entry in feed.entry:
#Extraire le lien vidéo
#LinkFinder est
# from gdata import *
#Utiliser à partir de
link = LinkFinder.GetHtmlLink(entry)
print link
Résultat d'exécution
<?xml version='1.0' encoding='UTF-8'?>
<ns0:link xmlns:ns0="http://www.w3.org/2005/Atom" href="https://www.youtube.com/watch?v=ZhCBEbsjdPo&feature=youtube_gdata" rel="alternate" type="text/html" />
.
.
.
J'ai pu obtenir 10 liens comme celui-ci. Ensuite, je téléchargerai la vidéo faisant référence à ce lien, mais comme tout ce dont j'ai besoin est la partie "href", coupons-la.
#L'une des données de liaison acquises précédemment
url = '<ns0:link xmlns:ns0="http://www.w3.org/2005/Atom" href="https://www.youtube.com/watch?v=wwAHyzfEEKc&feature=youtube_gdata" rel="alternate" type="text/html" />'
print url.split('href="')[1].split('&')[0]
#résultat>>> 'https://www.youtube.com/watch?v=wwAHyzfEEKc'
Remarque: Si vous souhaitez effectuer une recherche à la fois avec la boucle for, etc., max_results peut aller jusqu'à 50 et le nombre de boucles peut aller jusqu'à 10. En d'autres termes, le nombre maximum de vidéos pouvant être recherchées à la fois est de 500.
from pytube import YouTube
yt = YouTube()
yt.url = 'https://www.youtube.com/watch?v=wwAHyzfEEKc'
#Lancer le téléchargement
video = yt.get('mp4')
video.download('/path/to/videos/download/folder') #Téléchargez dans votre dossier préféré
Résultat d'exécution
Je pourrais facilement le télécharger comme ça. En combinant les programmes introduits cette fois, vous pouvez télécharger jusqu'à 500 vidéos à la fois.
Recommended Posts