#!/usr/bin/env python # vim:fileencoding=utf-8 from calibre.web.feeds.news import BasicNewsRecipe class CACM(BasicNewsRecipe): title = 'ACM CACM Magazine' description = 'Published on day 1 of every month.' language = 'en' oldest_article = 30 max_articles_per_feed = 100 auto_cleanup = True feeds = [ ('ACM CACM', 'https://cacm.acm.org/magazine.rss'), ] def get_cover_url(self): ''' Parse out cover URL from cover page. Example: From: https://cacm.acm.org/system/assets/0004/2570/April2022.Cover.1000x1338.large.jpg?1647524668&1647524668 Get: https://cacm.acm.org/system/assets/0004/2570/April2022.Cover.1000x1338.jpg ''' soup = self.index_to_soup('https://cacm.acm.org/') a_img = soup.find('a', class_='menuCover') img_url = a_img.img['src'] img_url = img_url.split('?')[0] img_url = img_url.replace('.large', '') return img_url