From 07b42396345d3eeb4ffb13133ae578ac4d127399 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 18 Feb 2022 19:59:22 +0530 Subject: [PATCH] workaround for nyt todays paper page using undefinedinstead of null in its json --- recipes/nytimes.recipe | 3 ++- recipes/nytimes_sub.recipe | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/recipes/nytimes.recipe b/recipes/nytimes.recipe index 5857394295..3d70106339 100644 --- a/recipes/nytimes.recipe +++ b/recipes/nytimes.recipe @@ -186,7 +186,8 @@ class NewYorkTimes(BasicNewsRecipe): soup = self.read_nyt_metadata() script = soup.findAll('script', text=lambda x: x and 'window.__preloadedData' in x)[0] script = type(u'')(script) - data = json.loads(script[script.find('{'):script.rfind(';')].strip().rstrip(';'))['initialState'] + json_data = script[script.find('{'):script.rfind(';')].strip().rstrip(';') + data = json.loads(json_data.replace(':undefined', ':null'))['initialState'] containers, sections = {}, {} article_map = {} gc_pat = re.compile(r'groupings.(\d+).containers.(\d+)') diff --git a/recipes/nytimes_sub.recipe b/recipes/nytimes_sub.recipe index 81cd96c7b6..16bf745f52 100644 --- a/recipes/nytimes_sub.recipe +++ b/recipes/nytimes_sub.recipe @@ -186,7 +186,8 @@ class NewYorkTimes(BasicNewsRecipe): soup = self.read_nyt_metadata() script = soup.findAll('script', text=lambda x: x and 'window.__preloadedData' in x)[0] script = type(u'')(script) - data = json.loads(script[script.find('{'):script.rfind(';')].strip().rstrip(';'))['initialState'] + json_data = script[script.find('{'):script.rfind(';')].strip().rstrip(';') + data = json.loads(json_data.replace(':undefined', ':null'))['initialState'] containers, sections = {}, {} article_map = {} gc_pat = re.compile(r'groupings.(\d+).containers.(\d+)')