home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_3968 < prev    next >
Encoding:
Text File  |  2010-02-12  |  3.4 KB  |  68 lines

  1. __license__   = 'GPL v3'
  2. __copyright__ = '2008-2010, Darko Miletic <darko.miletic at gmail.com>'
  3. '''
  4. pagina12.com.ar
  5. '''
  6.  
  7. import re
  8. from calibre.web.feeds.news import BasicNewsRecipe
  9. from calibre.ebooks.BeautifulSoup import BeautifulSoup
  10.  
  11. class Pagina12(BasicNewsRecipe):
  12.     title                 = 'Pagina - 12'
  13.     __author__            = 'Darko Miletic'
  14.     description           = 'Noticias de Argentina y el resto del mundo'
  15.     publisher             = 'La Pagina S.A.'
  16.     category              = 'news, politics, Argentina'
  17.     oldest_article        = 2
  18.     max_articles_per_feed = 200
  19.     no_stylesheets        = True
  20.     encoding              = 'cp1252'
  21.     use_embedded_content  = False
  22.     language              = 'es'
  23.     remove_empty_feeds    = True
  24.     masthead_url          = 'http://www.pagina12.com.ar/commons/imgs/logo-home.gif'
  25.     extra_css             = ' body{font-family: Arial,Helvetica,sans-serif } img{margin-bottom: 0.4em} #autor{font-weight: bold} #fecha,#epigrafe{font-size: 0.9em; margin: 5px} #imagen{border: 1px solid black; margin: 0 0 1.25em 1.25em; width: 232px }  '
  26.  
  27.     conversion_options = {
  28.                           'comment'   : description
  29.                         , 'tags'      : category
  30.                         , 'publisher' : publisher
  31.                         , 'language'  : language
  32.                         }
  33.  
  34.     remove_tags = [dict(name='div', attrs={'id':['volver','logo','logo_suple','fin','permalink']})]
  35.  
  36.  
  37.     feeds = [
  38.               (u'Edicion impresa', u'http://www.pagina12.com.ar/diario/rss/principal.xml'   )
  39.              ,(u'Espectaculos'   , u'http://www.pagina12.com.ar/diario/rss/espectaculos.xml')
  40.              ,(u'Radar'          , u'http://www.pagina12.com.ar/diario/rss/radar.xml'       )
  41.              ,(u'Radar libros'   , u'http://www.pagina12.com.ar/diario/rss/libros.xml'      )
  42.              ,(u'Cash'           , u'http://www.pagina12.com.ar/diario/rss/cash.xml'        )
  43.              ,(u'Turismo'        , u'http://www.pagina12.com.ar/diario/rss/turismo.xml'     )
  44.              ,(u'Libero'         , u'http://www.pagina12.com.ar/diario/rss/libero.xml'      )
  45.              ,(u'NO'             , u'http://www.pagina12.com.ar/diario/rss/no.xml'          )
  46.              ,(u'Las/12'         , u'http://www.pagina12.com.ar/diario/rss/las12.xml'       )
  47.              ,(u'Soy'            , u'http://www.pagina12.com.ar/diario/rss/soy.xml'         )
  48.              ,(u'Futuro'         , u'http://www.pagina12.com.ar/diario/rss/futuro.xml'      )
  49.              ,(u'M2'             , u'http://www.pagina12.com.ar/diario/rss/m2.xml'          )
  50.              ,(u'Rosario/12'     , u'http://www.pagina12.com.ar/diario/rss/rosario.xml'     )
  51.             ]
  52.  
  53.     def print_version(self, url):
  54.         return url.replace('http://www.pagina12.com.ar/','http://www.pagina12.com.ar/imprimir/')
  55.  
  56.     def get_cover_url(self):
  57.         rawc = self.index_to_soup('http://www.pagina12.com.ar/diario/principal/diario/index.html',True)
  58.         rawc2 = re.sub(r'PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN','PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"',rawc)
  59.         soup = BeautifulSoup(rawc2,fromEncoding=self.encoding,smartQuotesTo=None)
  60.         for image in soup.findAll('img',alt=True):
  61.            if image['alt'].startswith('Tapa de la fecha'):
  62.               return image['src']
  63.         return None
  64.  
  65.     def preprocess_html(self, soup):
  66.         for item in soup.findAll(style=True):
  67.             del item['style']
  68.         return soup