Fix #1001063 (Updated recipe for Clarin)

This commit is contained in:
Kovid Goyal 2012-05-18 09:34:26 +05:30
parent 045b867bd8
commit f4f119e2eb

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
__license__ = 'GPL v3' __license__ = 'GPL v3'
__copyright__ = '2008-2011, Darko Miletic <darko.miletic at gmail.com>' __copyright__ = '2008-2012, Darko Miletic <darko.miletic at gmail.com>'
''' '''
clarin.com clarin.com
''' '''
@ -8,9 +8,9 @@ clarin.com
from calibre.web.feeds.news import BasicNewsRecipe from calibre.web.feeds.news import BasicNewsRecipe
class Clarin(BasicNewsRecipe): class Clarin(BasicNewsRecipe):
title = 'Clarin' title = 'Clarín'
__author__ = 'Darko Miletic' __author__ = 'Darko Miletic'
description = 'Noticias de Argentina y mundo' description = 'Clarin.com. Noticias de la Argentina y el mundo. Información actualizada las 24 horas y en español. Informate ya'
publisher = 'Grupo Clarin' publisher = 'Grupo Clarin'
category = 'news, politics, Argentina' category = 'news, politics, Argentina'
oldest_article = 2 oldest_article = 2
@ -23,12 +23,10 @@ class Clarin(BasicNewsRecipe):
publication_type = 'newspaper' publication_type = 'newspaper'
INDEX = 'http://www.clarin.com' INDEX = 'http://www.clarin.com'
masthead_url = 'http://www.clarin.com/static/CLAClarin/images/logo-clarin-print.jpg' masthead_url = 'http://www.clarin.com/static/CLAClarin/images/logo-clarin-print.jpg'
extra_css = """ extra_css = """
body{font-family: Arial,Helvetica,sans-serif} body{font-family: Arial,Helvetica,sans-serif}
h2{font-family: Georgia,serif; font-size: xx-large} h2{font-family: Georgia,serif; font-size: xx-large}
.hora{font-weight:bold} .info,.nombre-autor,.hora{font-size: small}
.hd p{font-size: small}
.nombre-autor{color: #0F325A}
""" """
conversion_options = { conversion_options = {
@ -38,38 +36,35 @@ class Clarin(BasicNewsRecipe):
, 'language' : language , 'language' : language
} }
keep_only_tags = [dict(attrs={'class':['hd','mt']})] keep_only_tags = [dict(attrs={'class':['hd','mt','bd']})]
remove_tags = [dict(name=['meta','base','link'])] remove_tags = [dict(name=['meta','base','link','iframe','embed','object'])]
remove_attributes = ['lang','_mce_bogus'] remove_attributes = ['lang']
feeds = [ feeds = [
(u'Pagina principal', u'http://www.clarin.com/rss/' ) (u'Pagina principal', u'http://www.clarin.com/rss/' )
,(u'Politica' , u'http://www.clarin.com/rss/politica/' ) ,(u'Politica' , u'http://www.clarin.com/rss/politica/' )
,(u'Deportes' , u'http://www.clarin.com/rss/deportes/' ) ,(u'Deportes' , u'http://www.clarin.com/rss/deportes/' )
,(u'Economia' , u'http://www.clarin.com/economia/' )
,(u'Mundo' , u'http://www.clarin.com/rss/mundo/' ) ,(u'Mundo' , u'http://www.clarin.com/rss/mundo/' )
,(u'iEco' , u'http://www.ieco.clarin.com/rss/' )
,(u'Espectaculos' , u'http://www.clarin.com/rss/espectaculos/') ,(u'Espectaculos' , u'http://www.clarin.com/rss/espectaculos/')
,(u'Sociedad' , u'http://www.clarin.com/rss/sociedad/' ) ,(u'Sociedad' , u'http://www.clarin.com/rss/sociedad/' )
,(u'Ciudades' , u'http://www.clarin.com/rss/ciudades/' ) ,(u'Ciudades' , u'http://www.clarin.com/rss/ciudades/' )
,(u'Policiales' , u'http://www.clarin.com/rss/policiales/' ) ,(u'Policiales' , u'http://www.clarin.com/rss/policiales/' )
,(u'Internet' , u'http://www.clarin.com/rss/internet/' ) ,(u'Internet' , u'http://www.clarin.com/rss/internet/' )
,(u'Ciudades' , u'http://www.clarin.com/rss/ciudades/' )
] ]
def get_article_url(self, article):
return article.get('guid', None)
def print_version(self, url): def print_version(self, url):
return url + '?print=1' return url + '?print=1'
def get_article_url(self, article):
return article.get('guid', None)
def get_cover_url(self): def get_cover_url(self):
cover_url = None cover_url = None
soup = self.index_to_soup(self.INDEX) soup = self.index_to_soup(self.INDEX)
cover_item = soup.find('div',attrs={'class':'bb-md bb-md-edicion_papel'}) for item in soup.findAll('a', href=True):
if cover_item: if item['href'].startswith('/tapas/TAPA_CLA'):
ap = cover_item.find('a',attrs={'href':'/edicion-impresa/'}) cover_url = self.INDEX + item['href']
if ap: return cover_url
cover_url = self.INDEX + ap.img['src']
return cover_url return cover_url