From 7529eebed0e191d0655bf57d1a8949d0382b5b1a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 20 Jun 2012 20:05:54 +0530 Subject: [PATCH] Fix #1015584 (Updated recipe for Akter) --- recipes/akter.recipe | 70 +++++++++++++++----------------------------- 1 file changed, 23 insertions(+), 47 deletions(-) diff --git a/recipes/akter.recipe b/recipes/akter.recipe index 0f2fb05640..83625c240b 100644 --- a/recipes/akter.recipe +++ b/recipes/akter.recipe @@ -1,5 +1,5 @@ __license__ = 'GPL v3' -__copyright__ = '2010, Darko Miletic ' +__copyright__ = '2010-2012, Darko Miletic ' ''' akter.co.rs ''' @@ -8,7 +8,7 @@ import re from calibre.web.feeds.news import BasicNewsRecipe class Akter(BasicNewsRecipe): - title = 'AKTER' + title = 'AKTER - Nedeljnik' __author__ = 'Darko Miletic' description = 'AKTER - nedeljni politicki magazin savremene Srbije' publisher = 'Akter Media Group d.o.o.' @@ -18,61 +18,37 @@ class Akter(BasicNewsRecipe): no_stylesheets = True use_embedded_content = False encoding = 'utf-8' - masthead_url = 'http://www.akter.co.rs/templates/gk_thenews2/images/style2/logo.png' + masthead_url = 'http://www.akter.co.rs/gfx/logoneover.png' language = 'sr' publication_type = 'magazine' remove_empty_feeds = True - PREFIX = 'http://www.akter.co.rs' extra_css = """ @font-face {font-family: "sans1";src:url(res:///opt/sony/ebook/FONT/tt0003m_.ttf)} - .article_description,body{font-family: Arial,Helvetica,sans1,sans-serif} - .color-2{display:block; margin-bottom: 10px; padding: 5px, 10px; - border-left: 1px solid #D00000; color: #D00000} - img{margin-bottom: 0.8em} """ + body{font-family: Tahoma,Geneva,sans1,sans-serif} + img{margin-bottom: 0.8em; display: block;} + """ conversion_options = { - 'comment' : description - , 'tags' : category - , 'publisher' : publisher - , 'language' : language - , 'linearize_tables' : True + 'comment' : description + , 'tags' : category + , 'publisher': publisher + , 'language' : language } preprocess_regexps = [(re.compile(u'\u0110'), lambda match: u'\u00D0')] - - feeds = [ - (u'Politika' , u'http://www.akter.co.rs/index.php/politikaprint.html' ) - ,(u'Ekonomija' , u'http://www.akter.co.rs/index.php/ekonomijaprint.html') - ,(u'Life&Style' , u'http://www.akter.co.rs/index.php/lsprint.html' ) - ,(u'Sport' , u'http://www.akter.co.rs/index.php/sportprint.html' ) - ] - - def preprocess_html(self, soup): - for item in soup.findAll(style=True): - del item['style'] - return self.adeify_images(soup) + keep_only_tags = [dict(name='div', attrs={'id':'section_to_print'})] + feeds = [(u'Nedeljnik', u'http://akter.co.rs/rss/nedeljnik')] def print_version(self, url): - return url + '?tmpl=component&print=1&page=' - - def parse_index(self): - totalfeeds = [] - lfeeds = self.get_feeds() - for feedobj in lfeeds: - feedtitle, feedurl = feedobj - self.report_progress(0, _('Fetching feed')+' %s...'%(feedtitle if feedtitle else feedurl)) - articles = [] - soup = self.index_to_soup(feedurl) - for item in soup.findAll(attrs={'class':['sectiontableentry1','sectiontableentry2']}): - link = item.find('a') - url = self.PREFIX + link['href'] - title = self.tag_to_string(link) - articles.append({ - 'title' :title - ,'date' :'' - ,'url' :url - ,'description':'' - }) - totalfeeds.append((feedtitle, articles)) - return totalfeeds + dpart, spart, apart = url.rpartition('/') + return dpart + '/print-' + apart + def get_cover_url(self): + soup = self.index_to_soup('http://www.akter.co.rs/weekly.html') + divt = soup.find('div', attrs={'class':'lastissue'}) + if divt: + imgt = divt.find('img') + if imgt: + return 'http://www.akter.co.rs' + imgt['src'] + return None +