from calibre.web.feeds.news import BasicNewsRecipe class Cyberpresse(BasicNewsRecipe): title = u'Cyberpresse' __author__ = 'balok and Sujata Raman' description = 'Canadian news in French' language = 'fr' oldest_article = 7 max_articles_per_feed = 100 no_stylesheets = True remove_javascript = True html2lrf_options = ['--left-margin=0','--right-margin=0','--top-margin=0','--bottom-margin=0'] encoding = 'utf-8' keep_only_tags = [dict(name='div', attrs={'class':'article-page'}), dict(name='div', attrs={'id':'articlePage'}), ] extra_css = ''' .photodata{font-family:Arial,Helvetica,Verdana,sans-serif;color: #999999; font-size: 90%; } h1{font-family:Georgia,Times,serif ; font-size: large; } .amorce{font-family:Arial,Helvetica,Verdana,sans-serif; font-weight:bold;} .article-page{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: x-small;} #articlePage{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: x-small;} .auteur{font-family:Georgia,Times,sans-serif; font-size: 90%; color:#006699 ;} .bodyText{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: x-small;} .byLine{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: 90%;} .entry{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: x-small;} .minithumb-auteurs{font-family:Arial,Helvetica,Verdana,sans-serif; font-size: 90%; } a{color:#003399; font-weight:bold; } ''' remove_tags = [ dict(name='div', attrs={'class':['centerbar','colspan','share-module']}), dict(name='p', attrs={'class':['zoom']}), dict(name='ul', attrs={'class':['stories']}), dict(name='h4', attrs={'class':['general-cat']}), ] feeds = [(u'Manchettes', u'http://www.cyberpresse.ca/rss/225.xml'), (u'Capitale nationale', u'http://www.cyberpresse.ca/rss/501.xml'), (u'Opinions', u'http://www.cyberpresse.ca/rss/977.xml'), (u'Insolite', u'http://www.cyberpresse.ca/rss/279.xml') ] def postprocess_html(self, soup, first): for tag in soup.findAll(name=['i','strong']): tag.name = 'div' return soup