From a553db9626407ad41f19d4a4e7aa917274999cfa Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 1 Nov 2021 14:35:45 +0530 Subject: [PATCH] News download: Handle more types of invalid timestamps in RSS feeds --- src/calibre/web/feeds/__init__.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/calibre/web/feeds/__init__.py b/src/calibre/web/feeds/__init__.py index 14d3951a9c..5f93d9c2df 100644 --- a/src/calibre/web/feeds/__init__.py +++ b/src/calibre/web/feeds/__init__.py @@ -191,6 +191,14 @@ class Feed: published = item.get(date_field, None) if published is not None: break + if not published: + from dateutil.parser import parse + for date_field in ('date', 'published', 'updated'): + try: + published = parse(item[date_field]).timetuple() + except Exception: + continue + break if not published: published = time.gmtime() self.added_articles.append(id)