From 1173e49e6a1671b5b1a2393d803689ab3b7e7490 Mon Sep 17 00:00:00 2001 From: aikaterna <20862007+aikaterna@users.noreply.github.com> Date: Thu, 18 Mar 2021 16:56:09 -0700 Subject: [PATCH] [RSS] Make sure pubparsed is used when selected --- rss/rss.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/rss/rss.py b/rss/rss.py index bdf1d49..b56e1fa 100644 --- a/rss/rss.py +++ b/rss/rss.py @@ -25,7 +25,7 @@ from .tag_type import INTERNAL_TAGS, VALID_IMAGES, TagType log = logging.getLogger("red.aikaterna.rss") -__version__ = "1.4.4" +__version__ = "1.4.5" class RSS(commands.Cog): @@ -435,10 +435,18 @@ class RSS(commands.Cog): return rss_object async def _sort_by_post_time(self, feedparser_obj: feedparser.util.FeedParserDict): - for time_tag in ["updated_parsed", "published_parsed"]: + base_url = urlparse(feedparser_obj[0].get("link")).netloc + use_published_parsed_override = await self.config.use_published() + + if base_url in use_published_parsed_override: + time_tag = ["published_parsed"] + else: + time_tag = ["updated_parsed", "published_parsed"] + + for tag in time_tag: try: baseline_time = time.struct_time((2021, 1, 1, 12, 0, 0, 4, 1, -1)) - sorted_feed_by_post_time = sorted(feedparser_obj, key=lambda x: x.get(time_tag, baseline_time), reverse=True) + sorted_feed_by_post_time = sorted(feedparser_obj, key=lambda x: x.get(tag, baseline_time), reverse=True) break except TypeError: sorted_feed_by_post_time = feedparser_obj