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

  1. #!/usr/bin/env  python
  2.  
  3. __license__   = 'GPL v3'
  4. __copyright__ = u'2010, Tomasz Dlugosz <tomek3d@gmail.com>'
  5. '''
  6. sport.interia.pl
  7. '''
  8.  
  9. import re
  10. from calibre.web.feeds.news import BasicNewsRecipe
  11.  
  12. class InteriaSport(BasicNewsRecipe):
  13.     title          = u'Interia.pl - Sport'
  14.     description    = u'Sport ze strony interia.pl'
  15.     language = 'pl'
  16.     oldest_article = 7
  17.     __author__ = u'Tomasz D\u0142ugosz'
  18.     simultaneous_downloads = 3
  19.     no_stylesheets = True
  20.     remove_javascript = True
  21.     max_articles_per_feed = 100
  22.  
  23.     feeds          = [(u'Wydarzenia sportowe', u'http://kanaly.rss.interia.pl/sport.xml'), 
  24.                       (u'Pi\u0142ka no\u017cna', u'http://kanaly.rss.interia.pl/pilka_nozna.xml'), 
  25.                       (u'Siatk\xf3wka', u'http://kanaly.rss.interia.pl/siatkowka.xml'), 
  26.                       (u'Koszyk\xf3wka', u'http://kanaly.rss.interia.pl/koszykowka.xml'), 
  27.                       (u'NBA', u'http://kanaly.rss.interia.pl/nba.xml'), 
  28.                       (u'Kolarstwo', u'http://kanaly.rss.interia.pl/kolarstwo.xml'), 
  29.                       (u'\u017bu\u017cel', u'http://kanaly.rss.interia.pl/zuzel.xml'), 
  30.                       (u'Tenis', u'http://kanaly.rss.interia.pl/tenis.xml')]
  31.  
  32.     keep_only_tags = [dict(name='div', attrs={'id':'article'})]
  33.  
  34.     remove_tags = [dict(name='div', attrs={'class':'object gallery'}),
  35.                    dict(name='div', attrs={'class':'box fontSizeSwitch'})]
  36.  
  37.     extra_css = '''
  38.         .articleDate {
  39.         font-size: 0.5em;
  40.         color: black;
  41.         }
  42.  
  43.         .articleFoto {
  44.         display: block;
  45.         font-family: sans;
  46.         font-size: 0.5em;
  47.         text-indent: 0
  48.         color: black;
  49.         }
  50.  
  51.         .articleText {
  52.         display: block;
  53.         margin-bottom: 1em;
  54.         margin-left: 0;
  55.         margin-right: 0;
  56.         margin-top: 1em
  57.         color: black;
  58.         }
  59.  
  60.         .articleLead {
  61.         font-size: 1.2em;
  62.         }
  63.         '''
  64.  
  65.     preprocess_regexps = [
  66.         (re.compile(i[0], re.IGNORECASE | re.DOTALL), i[1]) for i in 
  67.         [
  68.             (r'<p><a href.*?</a></p>', lambda match: ''),
  69.            # FIXME
  70.            #(r'(<div id="newsAddContent">)(.*?)(<a href=".*">)(.*?)(</a>)', lambda match: '\1\2\4'),
  71.             (r'<p>(<i>)?<b>(ZOBACZ|CZYTAJ) T.*?</div>', lambda match: '</div>')
  72.         ]
  73.     ]
  74.