diff --git a/recipes/icons/the_nation.png b/recipes/icons/the_nation.png new file mode 100644 index 0000000000..fd6e6ebfb4 Binary files /dev/null and b/recipes/icons/the_nation.png differ diff --git a/recipes/the_nation.recipe b/recipes/the_nation.recipe index 0e4d8d83ef..a830817762 100644 --- a/recipes/the_nation.recipe +++ b/recipes/the_nation.recipe @@ -1,5 +1,5 @@ __license__ = 'GPL v3' -__copyright__ = '2008 - 2010, Darko Miletic ' +__copyright__ = '2008 - 2011, Darko Miletic ' ''' thenation.com ''' @@ -16,10 +16,17 @@ class Thenation(BasicNewsRecipe): max_articles_per_feed = 100 no_stylesheets = True language = 'en' - use_embedded_content = False - delay = 1 - masthead_url = 'http://www.thenation.com/sites/default/themes/thenation/images/logo-main.gif' - exra_css = ' body{font-family: Arial,Helvetica,sans-serif;} .print-created{font-size: small;} .caption{display: block; font-size: x-small;} ' + use_embedded_content = False + delay = 1 + masthead_url = 'http://www.thenation.com/sites/default/themes/thenation/images/logo-main.gif' + login_url = 'http://www.thenation.com/user?destination=%3Cfront%3E' + publication_type = 'magazine' + needs_subscription = 'optional' + exra_css = """ + body{font-family: Arial,Helvetica,sans-serif;} + .print-created{font-size: small;} + .caption{display: block; font-size: x-small;} + """ conversion_options = { 'comment' : description @@ -28,13 +35,30 @@ class Thenation(BasicNewsRecipe): , 'language' : language } - keep_only_tags = [ dict(attrs={'class':['print-title','print-created','print-content','print-links']}) ] - remove_tags = [dict(name='link')] + keep_only_tags = [dict(attrs={'class':['print-title','print-created','print-content','print-links']})] + remove_tags = [dict(name=['link','iframe','base','meta','object','embed'])] + remove_attributes = ['lang'] - feeds = [(u"Editor's Picks", u'http://www.thenation.com/rss/editors_picks')] + feeds = [(u"Articles", u'http://www.thenation.com/rss/articles')] def print_version(self, url): return url.replace('.thenation.com/','.thenation.com/print/') - def preprocess_html(self, soup): - return self.adeify_images(soup) + def get_browser(self): + br = BasicNewsRecipe.get_browser() + br.open('http://www.thenation.com/') + if self.username is not None and self.password is not None: + br.open(self.login_url) + br.select_form(nr=1) + br['name'] = self.username + br['pass'] = self.password + br.submit() + return br + + def get_cover_url(self): + soup = self.index_to_soup('http://www.thenation.com/issue/') + item = soup.find('div',attrs={'id':'cover-wrapper'}) + if item: + return item.img['src'] + return None + \ No newline at end of file