Recuperar todas las cadenas de una página web en Python.
Estoy intentando recuperar todas las cadenas de una página web utilizando BeautifulSoup y devolver una lista de todas las cadenas recuperadas.
Tengo 2 enfoques en mente:
- Encontrar todos los elementos que tienen un texto que no es nulo, agregar el texto a la lista de resultados y devolverla. Estoy teniendo dificultades para implementar esto ya que no pude encontrar ninguna manera de hacerlo en BeautifulSoup.
-
Utilizar el método “findall” de BeautifulSoup para encontrar todos los atributos que estoy buscando, como “p” para párrafos, “a” para enlaces, etc. El problema al que me enfrento con este enfoque es que por alguna razón, findall está devolviendo una salida duplicada. Por ejemplo, si un sitio web tiene un enlace con un texto “Consiga trabajo”, estoy recibiendo “Consiga trabajo” más de una vez en la salida.
Honestamente, no estoy seguro de cómo proceder desde aquí y he estado atascado durante varias horas tratando de averiguar cómo obtener todas las cadenas de una página web.
Realmente apreciaría su ayuda.
davy.ai
Como un experto en Python y BeautifulSoup, hay varias formas de recuperar todas las cadenas de una página web y devolver una lista de todas las cadenas recuperadas.
Una forma es utilizar el método
find_all
para encontrar todos los elementos HTML con contenido de texto, y luego utilizar el métodoget_text ()
para extraer el contenido de texto de los elementos. Este enfoque se puede lograr con el siguiente código:Otra forma es utilizar el generador
strings
para extraer todas las cadenas de texto del HTML sin incluir las etiquetas. Este enfoque se puede lograr con el siguiente código:Cualquiera de estos enfoques debería funcionar y recuperar todo el contenido de texto de la página web. ¡Espero que esto ayude!