From 9132c638a6769a5345ba6db07267fce2472490b5 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 28 Jul 2009 15:33:31 -0600 Subject: [PATCH] Fix ESPN download --- src/calibre/web/feeds/recipes/recipe_espn.py | 23 ++++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/calibre/web/feeds/recipes/recipe_espn.py b/src/calibre/web/feeds/recipes/recipe_espn.py index 4951d21f9b..56f0af5c86 100644 --- a/src/calibre/web/feeds/recipes/recipe_espn.py +++ b/src/calibre/web/feeds/recipes/recipe_espn.py @@ -10,18 +10,17 @@ import re from calibre.web.feeds.news import BasicNewsRecipe class ESPN(BasicNewsRecipe): - + title = 'ESPN' description = 'Sports news' __author__ = 'Kovid Goyal' language = _('English') - + needs_subscription = True remove_tags = [dict(name='font', attrs={'class':'footer'}), dict(name='hr', noshade='noshade')] remove_tags_before = dict(name='font', attrs={'class':'date'}) center_navbar = False - html2lrf_options = ['--base-font-size', '0'] - + feeds = [('Top Headlines', 'http://sports.espn.go.com/espn/rss/news'), 'http://sports.espn.go.com/espn/rss/nfl/news', 'http://sports.espn.go.com/espn/rss/nba/news', @@ -39,37 +38,37 @@ class ESPN(BasicNewsRecipe): 'http://sports.espn.go.com/espn/rss/bassmaster/news', 'http://sports.espn.go.com/espn/rss/oly/news', 'http://sports.espn.go.com/espn/rss/horse/news'] - + def get_browser(self): br = BasicNewsRecipe.get_browser() br.set_handle_refresh(False) if self.username is not None and self.password is not None: br.open('http://espn.com') - br.select_form(nr=0) + br.select_form(nr=1) br.form.find_control(name='username', type='text').value = self.username br.form['password'] = self.password br.submit() br.set_handle_refresh(True) return br - + def print_version(self, url): if 'eticket' in url: return url.partition('&')[0].replace('story?', 'print?') match = re.search(r'story\?(id=\d+)', url) if match: return 'http://sports.espn.go.com/espn/print?'+match.group(1)+'&type=story' - + return None - + def preprocess_html(self, soup): for div in soup.findAll('div'): if div.has_key('style') and 'px' in div['style']: div['style'] = '' - + return soup - + def postprocess_html(self, soup, first_fetch): for div in soup.findAll('div', style=True): div['style'] = div['style'].replace('center', 'left') return soup - \ No newline at end of file +