news working

This commit is contained in:
Rripped 2022-03-29 12:20:58 +02:00
parent 4afd1ab87b
commit 4bd53c0116
2 changed files with 11 additions and 8 deletions

View File

@ -245,13 +245,18 @@ def send_news(message):
user_id = int(message.from_user.id)
keywords = api_handler.get_user_keywords(user_id)
keywords_search = ','.join(keywords)
keywords_search = ' OR '.join(keywords)
print(keywords_search)
news_list = news.get_top_news_by_keyword(keywords_search)["articles"]
for article in news_list:
formatted_article = news.format_article(article)
bot.send_message(chat_id=user_id, text=formatted_article, parse_mode="MARKDOWN")
if news_list:
for article in news_list:
formatted_article = news.format_article(article)
bot.send_message(chat_id=user_id, text=formatted_article, parse_mode="MARKDOWN")
else:
bot.send_message(chat_id=user_id, text='No news found for your keywords.')
@bot.message_handler(commands=['addkeyword'])

View File

@ -14,7 +14,6 @@ import requests
from newsapi import NewsApiClient
from dotenv import load_dotenv
import urllib.parse as urlparse
load_dotenv()
@ -34,8 +33,7 @@ def get_top_news_by_keyword(keyword):
Returns:
JSON/dict: dict containing articles
"""
keyword_url = urlparse.quote(keyword)
top_headlines = newsapi.get_top_headlines(q=keyword_url, sources=str_sources, language='en')
top_headlines = newsapi.get_everything(q=keyword, sources=str_sources, language='en')
return top_headlines
def format_article(article):