lector de contenido

This commit is contained in:
2025-02-03 16:44:19 +01:00
parent f5bd8d17f2
commit dfb1b948c9
2 changed files with 75 additions and 42 deletions

File diff suppressed because one or more lines are too long

View File

@ -34,6 +34,39 @@ def get_url_from_google_news(url):
except Exception as e:
print(f"Error occurred: {e}")
def get_article_content(url):
"""
Extrae el texto principal del artículo desde la URL final.
"""
try:
response = requests.get(url, headers=HEADERS)
if response.status_code != 200:
print(f"Error al acceder a {url}: Código {response.status_code}")
return "No se pudo obtener el contenido"
soup = BeautifulSoup(response.text, "html.parser")
# Buscar los elementos más comunes donde se almacena el contenido del artículo
possible_containers = [
soup.find("article"), # Etiqueta <article> (común en blogs y periódicos)
soup.find("div", class_="post-content"), # Clases comunes en WordPress
soup.find("div", class_="entry-content"),
soup.find("div", class_="content"),
soup.find("div", id="article-body")
]
for container in possible_containers:
if container:
paragraphs = container.find_all("p")
article_text = "\n".join(p.get_text(strip=True) for p in paragraphs)
return article_text if article_text else "No se encontró contenido relevante"
return "No se encontró contenido relevante"
except Exception as e:
print(f"Error al extraer contenido de {url}: {e}")
return "Error al extraer contenido"
def search_news(query):
"""
Busca noticias relacionadas con una palabra clave en Google News.
@ -63,7 +96,7 @@ def search_news(query):
# Obtener el autor usando autorsearcher.py
author = get_author_from_script(final_url)
content = get_article_content(final_url)
news_item = {
"titulo": title,
"contenido": content,