1
import requests
from bs4 import BeautifulSoup
youtube = "https://www.youtube.com/results?search_query="
def get_address(keyword):
query = youtube + keyword
source_code = requests.get(query)
plain_text = source_code.text
soup = BeautifulSoup(plain_text, "html.parser")
for link in soup.findAll('a', {'id': 'video-title'}):
href = link.get('href')
print(href)
break
get_address("scishow")
Le programme se déroule avec succès, mais au lieu de montrer l'adresse de la vidéo, il ne montre rien dans la sortie.Pourquoi aucune sortie n'apparaît dans ce robot d'exploration YouTube en python?
Votre code est bon, la seule raison pour laquelle il ne montre rien dans la sortie est parce que la balise 'a' que vous cherchez n'est pas là. Le '' est ajouté à la page plus tard avec JavaScript, ce qui bien sûr n'a pas été exécutée lorsque vous récupérez le code HTML initial. – pacha
Probablement parce que la page utilise 'JS'. Demande sera inutile dans ce cas, utilisez 'selenium' à la place. –