Requisito previo:
En este artículo, discutiremos el web scraping de videos usando python. Para el raspado web, usaremos requests y el módulo BeautifulSoup en Python. La biblioteca de requests es una parte integral de Python para realizar requests HTTP a una URL específica. Ya sea que se trate de API REST o Web Scraping, las requests deben aprenderse para continuar con estas tecnologías. Cuando uno realiza una solicitud a un URI, devuelve una respuesta. Las requests de Python proporcionan funcionalidades integradas para administrar tanto la solicitud como la respuesta.
pip install requests
Beautiful Soup es una biblioteca de Python diseñada para proyectos de respuesta rápida como el raspado de pantalla.
pip install bs4
Entendamos la implementación paso a paso:
- Importar módulo requerido
Python3
# Import Required Module import requests from bs4 import BeautifulSoup
- Analizar contenido HTML
Python3
# Web URL Web_url = "Enter WEB URL" # Get URL Content r = requests.get(Web_url) # Parse HTML Code soup = BeautifulSoup(r.content, 'html5lib')
- Contar cuántos videos hay en la página web. En HTML Para mostrar video, usamos la etiqueta de video .
Python3
# List of all video tag video_tags = soup.findAll('video') print("Total ",len(video_tags),"videos found")
- Iterar a través de todas las etiquetas de video y obtener la URL del video
Python3
for video_tag in video_tags: video_url = video_tag.find("a")['href'] print(video_url)
A continuación se muestra la implementación:
Python3
# Import Required Module import requests from bs4 import BeautifulSoup # Web URL Web_url = "https://www.geeksforgeeks.org/make-notepad-using-tkinter/" # Get URL Content r = requests.get(Web_url) # Parse HTML Code soup = BeautifulSoup(r.content, 'html.parser') # List of all video tag video_tags = soup.findAll('video') print("Total ", len(video_tags), "videos found") if len(video_tags) != 0: for video_tag in video_tags: video_url = video_tag.find("a")['href'] print(video_url) else: print("no videos found")
Producción:
Total 1 videos found https://media.geeksforgeeks.org/wp-content/uploads/15.webm