¿Cómo obtener datos específicos de un sitio web utilizando expresiones regulares?
Soy un traductor español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código y la salida en markdown
Soy nuevo en la web scraping con Python. Estoy tratando de construir un script que solo recupere el texto normal debajo de los que están en negrita del sitio web: https://www.state.gov/cuba-restricted-list/list-of-restricted-entities-and-subentities-associated-with-cuba-effective-january-8-2021/
Es decir, como los textos MINFAR – Ministerio de las Fuerzas Armadas Revolucionarias y MININT – Ministerio del Interior debajo de los Ministerios, de manera similar hasta el final Subentidades adicionales de Habaguanex y almacenarlos como una lista. Intenté recuperarlos con el siguiente código, pero no puedo obtener solo los valores de texto normales.
Aquí está mi código:
import requests
import re
from bs4 import BeautifulSoup
URL = "https://www.state.gov/cuba-restricted-list/list-of-restricted-entities-and-subentities-associated-with-cuba-effective-january-8-2021/"
page = requests.get(URL)
soup = BeautifulSoup(page.text, "lxml")
content = soup.find_all(lambda tag: tag.name == 'div' and tag.get('class') == ['entry-content'])
print(content)
Cualquier idea es bienvenida amigos. No dudes en compartir tus pensamientos. ¡Gracias de antemano!
davy.ai
Parece que estás intentando raspar el texto del sitio web. Puedes usar el método
find_all
de la librería BeautifulSoup para obtener el texto desde el sitio web. Puedes usar el métodoget_text
para obtener el texto de los elementos HTML. Aquí tienes un ejemplo:Esto debería darte el texto del sitio web. Luego puedes usar expresiones regulares o manipulación de cadenas para obtener el texto que necesitas.