calibre/recipes/winnipeg_free_press.recipe
2020-08-06 11:41:16 +05:30

42 lines
1.5 KiB
Plaintext

from calibre.web.feeds.news import BasicNewsRecipe
def classes(classes):
q = frozenset(classes.split(' '))
return dict(attrs={
'class': lambda x: x and frozenset(x.split()).intersection(q)})
class WinnipegFreePress(BasicNewsRecipe):
title = u'Winnipeg Free Press'
__author__ = 'buyo'
description = 'News from Winnipeg, Manitoba, Canada'
oldest_article = 1
max_articles_per_feed = 15
category = 'News, Winnipeg, Canada'
no_stylesheets = True
encoding = 'UTF-8'
remove_javascript = True
use_embedded_content = False
language = 'en_CA'
extra_css = '''
.factbox { border: solid 2px; padding: 1rem }
'''
feeds = [(u'Breaking News', u'http://www.winnipegfreepress.com/rss?path=/breakingnews'),
(u'Local News', u'http://www.winnipegfreepress.com/rss?path=/local'),
(u'Breaking Business News',
u'http://www.winnipegfreepress.com/rss?path=/business/finance'),
(u'Business', u'http://www.winnipegfreepress.com/rss?path=/business'),
(u'Editorials', u'http://www.winnipegfreepress.com/rss?path=/opinion/editorials'),
(u'Views from the West',
u'http://www.winnipegfreepress.com/rss?path=/opinion/westview'),
(u'Life & Style', u'http://www.winnipegfreepress.com/rss?path=/life'),
(u'Food & Drink', u'http://www.winnipegfreepress.com/rss?path=/life/food')
]
keep_only_tags = [
classes('article-title topphoto storycontent')
]
remove_tags = [dict(name='button')]