En este tutorial, veremos cómo podemos raspar recursivamente todas las URL del sitio web.
La recursividad en informática es un método para resolver un problema donde la solución depende de soluciones a instancias más pequeñas del mismo problema. Dichos problemas generalmente se pueden resolver mediante iteración, pero esto necesita identificar e indexar las instancias más pequeñas en el momento de la programación.
Nota: Para obtener más información, consulte Recursividad
Módulos requeridos e Instalación
- Requests:
Requests le permite enviar requests HTTP/1.1 de forma extremadamente sencilla. No es necesario agregar manualmente strings de consulta a sus URL.pip install requests
- Beautiful Soup:
Beautiful Soup es una biblioteca que facilita extraer información de las páginas web. Se asienta sobre un analizador HTML o XML, proporcionando modismos Pythonic para iterar, buscar y modificar el árbol de análisis.pip install beautifulsoup4
Código:
from bs4 import BeautifulSoup import requests # lists urls=[] # function created def scrape(site): # getting the request from url r = requests.get(site) # converting the text s = BeautifulSoup(r.text,"html.parser") for i in s.find_all("a"): href = i.attrs['href'] if href.startswith("/"): site = site+href if site not in urls: urls.append(site) print(site) # calling it self scrape(site) # main function if __name__ =="__main__": # website to be scrape site="http://example.webscraping.com//" # calling function scrape(site)
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA