import logging from datetime import datetime from grabber import Grabber class ArsTechnica(Grabber): feed_url = "http://feeds.arstechnica.com/arstechnica/index" date_format = "%a, %d %b %Y %H:%M:%S %z" def parse(self, feed): articles = [] for article in feed.iter("item"): try: # Sat, 18 Jan 2020 15:41:56 +0000 timestamp = int(datetime.strptime(article.find("pubDate").text, self.date_format).timestamp()) title = article.find("title").text description = article.find("description").text articles.append((timestamp, title, description)) except AttributeError: logging.error(f"Received non-parsable news article from {self.name}.") return articles