From 2a90da87ec7db680a189267490df3b00e03b9178 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 26 Aug 2022 19:31:21 +0530 Subject: [PATCH] Update Financial Times Print Edition --- recipes/financial_times_print_edition.recipe | 29 ++++++++++++++------ 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/recipes/financial_times_print_edition.recipe b/recipes/financial_times_print_edition.recipe index c45e135312..82d83db55b 100644 --- a/recipes/financial_times_print_edition.recipe +++ b/recipes/financial_times_print_edition.recipe @@ -2,6 +2,7 @@ import json import re from datetime import date from calibre.web.feeds.news import BasicNewsRecipe, classes +from urllib.parse import quote class ft(BasicNewsRecipe): @@ -71,9 +72,9 @@ class ft(BasicNewsRecipe): 'url': url, 'description': desc }) - self.log('\t\t', desc) - self.log('\t\tFound article:', title) - self.log('\t\t\t', url) + self.log('\t', desc) + self.log('\t', title) + self.log('\t\t', url) if articles: feeds.append((secname, articles)) return feeds @@ -101,16 +102,26 @@ class ft(BasicNewsRecipe): author = ' and '.join(x['name'] for x in data['author']) image = desc = title_image_url = '' - if data.get('image'): - title_image_url = data['image']['url'] - image = '

'.format(title_image_url) + def resize_img(img): + a = 'https://www.ft.com/__origami/service/image/v2/images/raw/' + b = quote(img, safe='') + c = '?dpr=2&fit=scale-down&quality=medium&source=next&width=300' + # use width = 200, 300, 400,.. 700... + return a + b + c + + if data.get('image'): + image_url = data['image']['url'] + if body.__contains__(image_url) is False: + title_image_url = resize_img(image_url) + image = '

'.format(title_image_url) # embedded image links + def insert_image(m): url = m.group()[1:-1] - if url == title_image_url: - return '' - return '

'.format(url) + if url.__contains__('studio') is False: + url = resize_img(url) + return '

'.format(url) body = re.sub(r'\[https://\S+?\]', insert_image, body)