Rechercher et télécharger automatiquement des vidéos YouTube avec Python

Bibliothèque à utiliser

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

Rechercher 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&amp;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&amp;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.

Télécharger des vidéos YouTube

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

Downloads-2.png

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

Rechercher et télécharger automatiquement des vidéos YouTube avec Python
Rechercher et lire des vidéos YouTube avec Python
Comment télécharger des vidéos YouTube avec youtube-dl
Téléchargez facilement des mp3 / mp4 avec python et youtube-dl!
Recherche séquentielle avec Python
Raisonnement causal et recherche causale par Python (pour les débutants)
Dichotomie avec python
Dichotomie avec Python 3
Obtenez des images et des vidéos de la chronologie des médias avec Python + Tweepy
Téléchargez facilement et partiellement mp4 avec python et youtube-dl!
Obtenez des commentaires sur youtube Live avec [python] et [pytchat]!
Exploration avec Python et Twitter API 1 - Fonction de recherche simple
Traduisez automatiquement DeepL en anglais avec Python et Selenium
Programmation avec Python et Tkinter
Chiffrement et déchiffrement avec Python
Python et matériel - Utilisation de RS232C avec Python -
Obtenez des données Youtube avec python
Gestion de vidéos YouTube avec Python 3
Homebrew Python - Programme de recherche YouTube
Recherche de bits complète avec Python
python avec pyenv et venv
Les moteurs de recherche fonctionnent avec python
Rechercher des tweets Twitter avec Python
[Python] Recherche de priorité de profondeur et recherche de priorité de largeur
Télécharger le fichier csv avec python
Rationalisez la recherche Web avec Python
Fonctionne avec Python et R
Résolution avec Ruby et Python AtCoder ABC151 D Recherche de priorité de largeur
Comment convertir Youtube en mp3 et le télécharger en toute sécurité [Python]
Créer un outil de saut automatique d'annonces YouTube avec Python et OCR
Comment se connecter à AtCoder avec Python et soumettre automatiquement
Communiquez avec FX-5204PS avec Python et PyUSB
Briller la vie avec Python et OpenCV
Robot fonctionnant avec Arduino et python
Installez Python 2.7.9 et Python 3.4.x avec pip.
Réseau neuronal avec OpenCV 3 et Python 3
Modulation et démodulation AM avec python
Scraping avec Node, Ruby et Python
Téléchargement de fichiers implémenté avec Python + Bottle
Grattage avec Python, Selenium et Chromedriver
Grattage avec Python et belle soupe
Encodage et décodage JSON avec python
Introduction à Hadoop et MapReduce avec Python
[GUI en Python] PyQt5-Glisser-déposer-
Lire et écrire NetCDF avec Python
J'ai joué avec PyQt5 et Python3
Créer automatiquement la documentation Python avec Sphinx
Lire et écrire du CSV avec Python
Intégration multiple avec Python et Sympy
Coexistence de Python2 et 3 avec CircleCI (1.0)
Jeu Sugoroku et jeu d'addition avec Python
Télécharger et télécharger des images avec Falcon
Modulation et démodulation FM avec Python
Recherche de 2 minutes Python et ses dérivés
Exploration avec Python et Twitter API 2-Implémentation de la fonction de recherche d'utilisateurs
Faites en sorte que les vidéos floues ressemblent à des caméras à point fixe avec Python et OpenCV
Communiquez entre Elixir et Python avec gRPC