¿Cómo extraer un párrafo de un sitio web y guardarlo como un archivo de texto?

Beneficios:  

El raspado es una técnica esencial que nos ayuda a recuperar datos útiles de una URL o un archivo html que se puede usar de otra manera. El artículo dado muestra cómo extraer un párrafo de una URL y guardarlo como un archivo de texto.

Módulos necesarios

bs4: Beautiful Soup (bs4) es una biblioteca de Python utilizada para obtener datos de archivos HTML y XML. Se puede instalar de la siguiente manera:

pip install bs4

urllib: urllib es un paquete que recopila varios módulos para trabajar con URL. También se puede instalar de la misma manera, es la mayor parte del integrado en el propio entorno.

pip install urllib

Acercarse:

  • Crea un archivo de texto.
  • Ahora, para el programa, importe el módulo requerido y pase la URL y la ruta del archivo **.txt. Esto hará una copia del código html de esa URL en su máquina local.
  • Hacer una instancia de requests y pasar a la URL
  • Abra el archivo en modo de lectura y pase los parámetros requeridos
  • Pase las requests a una función Beautifulsoup().
  • Cree otro archivo (o también puede escribir/agregar en un archivo existente).
  • Luego podemos iterar y encontrar todas las etiquetas ‘p’ e imprimir cada uno de los párrafos en nuestro archivo de texto.

La implementación se da a continuación:

Ejemplo:

Python3

import urllib.request
from bs4 import BeautifulSoup
  
# here we have to pass url and path
# (where you want to save ur text file)
urllib.request.urlretrieve("https://www.geeksforgeeks.org/grep-command-in-unixlinux/?ref=leftbar-rightbar",
                           "/home/gpt/PycharmProjects/pythonProject1/test/text_file.txt")
  
file = open("text_file.txt", "r")
contents = file.read()
soup = BeautifulSoup(contents, 'html.parser')
  
f = open("test1.txt", "w")
  
# traverse paragraphs from soup
for data in soup.find_all("p"):
    sum = data.get_text()
    f.writelines(sum)
  
f.close()

Producción:

Publicación traducida automáticamente

Artículo escrito por skrg141 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *