tg_rss_bot/rss.py
mitsuha_s 42de1efed1
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is failing
add a date display in update sent to the user
2022-06-12 22:52:16 +00:00

25 lines
721 B
Python

from feedparser import FeedParserDict, parse
class FeedItem:
def __init__(self, item: FeedParserDict) -> None:
self.url = item.get('link', '')
self.title = item.get('title', '')
self.description = item.get('summary', '')
if 'published' in item:
self.date = item.published_parsed()
else:
self.date = ''
class Feed:
def __init__(self, url: str, feed: FeedParserDict) -> None:
self.url = url
self.items = []
self.title = feed.feed.get('title', '')
for item in feed.entries:
self.items.append(FeedItem(item))
class RssReader:
def get_feed(self, url: str) -> Feed:
return Feed(url, parse(url))