From 9fa75b797b72172676d2ede68ed68490e9058588 Mon Sep 17 00:00:00 2001 From: Robert Alimov Date: Mon, 29 Oct 2018 15:28:40 -0700 Subject: [PATCH] Updated publish date parser to include NBC and Fox. --- newspaper/extractors.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/newspaper/extractors.py b/newspaper/extractors.py index 120a5ff3..1420cf44 100644 --- a/newspaper/extractors.py +++ b/newspaper/extractors.py @@ -216,6 +216,8 @@ def parse_date_str(date_str): 'content': 'content'}, {'attribute': 'pubdate', 'value': 'pubdate', 'content': 'datetime'}, + {'attribute': 'name', 'value': 'dcterms.created', + 'content': 'content'}, # Fox News ] for known_meta_tag in PUBLISH_DATE_TAGS: meta_tags = self.parser.getElementsByTag( @@ -230,6 +232,24 @@ def parse_date_str(date_str): if datetime_obj: return datetime_obj + # NBC News + NBC_TAG = { + 'tag': 'time', + 'attribute': 'datetime' + } + date_tags = self.parser.getElementsByTag( + doc, + tag=NBC_TAG['tag'] + ) + if (date_tags): + date_str = self.parser.getAttribute( + date_tags[0], + NBC_TAG['attribute'] + ) + datetime_obj = parse_date_str(date_str) + if datetime_obj: + return datetime_obj + return None def get_title(self, doc):