home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Narzedzia / Calibre / calibre-0.8.18.msi / file_280 / elsevier.recipe < prev    next >
Text File  |  2011-09-09  |  3KB  |  65 lines

  1. __license__   = 'GPL v3'
  2. __copyright__ = '2010, Darko Miletic <darko.miletic at gmail.com>'
  3. '''
  4. elsevier.nl
  5. '''
  6.  
  7. from calibre.web.feeds.news import BasicNewsRecipe
  8.  
  9. class Pagina12(BasicNewsRecipe):
  10.     title                 = 'Elsevier.nl'
  11.     __author__            = 'Darko Miletic'
  12.     description           = 'News from Holland'
  13.     publisher             = 'elsevier.nl'
  14.     category              = 'news, politics, Holland'
  15.     oldest_article        = 2
  16.     max_articles_per_feed = 200
  17.     no_stylesheets        = True
  18.     encoding              = 'utf-8'
  19.     use_embedded_content  = False
  20.     language              = 'nl'
  21.     country               = 'NL'    
  22.     remove_empty_feeds    = True
  23.     masthead_url          = 'http://www.elsevier.nl/static/elsevier/stdimg/logo.gif'
  24.     extra_css             = ' body{font-family: Arial,Helvetica,sans-serif } img{margin-bottom: 0.4em}  '
  25.  
  26.     conversion_options = {
  27.                           'comment'   : description
  28.                         , 'tags'      : category
  29.                         , 'publisher' : publisher
  30.                         , 'language'  : language
  31.                         }
  32.     
  33.     keep_only_tags     = dict(attrs={'id':'artikel_container'})
  34.     remove_tags_before = dict(attrs={'id':'breadcrumb_container'})
  35.     remove_tags_after  = dict(attrs={'class':'author_link'})
  36.     remove_tags        = [
  37.                           dict(attrs={'id':'breadcrumb_container'})
  38.                          ,dict(name='div',attrs={'class':'pullout_vak'})
  39.                          ]
  40.     remove_attributes  = ['width','height']
  41.  
  42.     feeds = [
  43.                (u'Laatste nieuws'      , u'http://www.elsevier.nl/web/RSS/Homepage-RSS.htm?output=xml'         )
  44.               ,(u'Nederland'           , u'http://www.elsevier.nl/web/RSS/Nederland-RSS.htm?output=xml'        )
  45.               ,(u'Politiek'            , u'http://www.elsevier.nl/web/RSS/Politiek-RSS.htm?output=xml'         )
  46.               ,(u'Europese Unie'       , u'http://www.elsevier.nl/web/RSS/Europese-Unie-RSS.htm?output=xml'    )
  47.               ,(u'Buitenland'          , u'http://www.elsevier.nl/web/RSS/Buitenland-RSS.htm?output=xml'       )
  48.               ,(u'Economie'            , u'http://www.elsevier.nl/web/RSS/Economie-RSS.htm?output=xml'         )
  49.               ,(u'Wetenschap'          , u'http://www.elsevier.nl/web/RSS/Wetenschap-RSS.htm?output=xml'       )
  50.               ,(u'Cultuur & Televisie' , u'http://www.elsevier.nl/web/RSS/Cultuur-Televisie-RSS.htm?output=xml')
  51.               ,(u'Society'             , u'http://www.elsevier.nl/web/RSS/Society-RSS.htm?output=xml'          )
  52.               ,(u'Internet&/Gadgets'   , u'http://www.elsevier.nl/web/RSS/Internet-Gadgets-RSS.htm?output=xml' )
  53.               ,(u'Comentaren'          , u'http://www.elsevier.nl/web/RSS/Commentaren-RSS.htm?output=xml'      )              
  54.             ]
  55.  
  56.     def print_version(self, url):
  57.         return url + '?print=true'
  58.  
  59.     def get_article_url(self, article):
  60.         return article.get('guid',  None).rpartition('?')[0]
  61.         
  62.     def preprocess_html(self, soup):
  63.         for item in soup.findAll(style=True):
  64.             del item['style']
  65.         return soup