Update Los Angeles Times

This commit is contained in:
Kovid Goyal 2013-11-29 22:27:46 +05:30
parent 298d9d785f
commit 87255226c0

View File

@ -4,12 +4,13 @@ __copyright__ = '2008-2011, Darko Miletic <darko.miletic at gmail.com>'
www.latimes.com www.latimes.com
''' '''
import re, urllib
from calibre.web.feeds.news import BasicNewsRecipe from calibre.web.feeds.news import BasicNewsRecipe
class LATimes(BasicNewsRecipe): class LATimes(BasicNewsRecipe):
title = 'Los Angeles Times' title = 'Los Angeles Times'
__author__ = 'Darko Miletic' __author__ = 'Darko Miletic'
description = 'The Los Angeles Times is a leading source of news on Southern California, entertainment, movies, television, music, politics, business, health, technology, travel, sports, environment, economics, autos, jobs, real estate and other topics affecting California' description = 'The Los Angeles Times is a leading source of news on Southern California, entertainment, movies, television, music, politics, business, health, technology, travel, sports, environment, economics, autos, jobs, real estate and other topics affecting California' # noqa
publisher = 'Tribune Company' publisher = 'Tribune Company'
category = 'news, politics, USA, Los Angeles, world' category = 'news, politics, USA, Los Angeles, world'
oldest_article = 2 oldest_article = 2
@ -53,7 +54,6 @@ class LATimes(BasicNewsRecipe):
] ]
remove_attributes=['lang','xmlns:fb','xmlns:og','border','xtags','i','article_body'] remove_attributes=['lang','xmlns:fb','xmlns:og','border','xtags','i','article_body']
feeds = [ feeds = [
(u'Top News' , u'http://feeds.latimes.com/latimes/news') (u'Top News' , u'http://feeds.latimes.com/latimes/news')
,(u'Local News' , u'http://feeds.latimes.com/latimes/news/local') ,(u'Local News' , u'http://feeds.latimes.com/latimes/news/local')
@ -89,7 +89,12 @@ class LATimes(BasicNewsRecipe):
def get_article_url(self, article): def get_article_url(self, article):
ans = BasicNewsRecipe.get_article_url(self, article).rpartition('?')[0] ans = BasicNewsRecipe.get_article_url(self, article).rpartition('?')[0]
if not ans:
ans = urllib.unquote(re.search(r'href="http://share.feedsportal.com/share/twitter/\?u=([^"]+)', article['summary']).group(1)).partition('?')[0]
return ans
def print_version(self, url):
ans = url
try: try:
self.log('Looking for full story link in', ans) self.log('Looking for full story link in', ans)
soup = self.index_to_soup(ans) soup = self.index_to_soup(ans)
@ -97,7 +102,7 @@ class LATimes(BasicNewsRecipe):
if x is not None: if x is not None:
a = x.parent a = x.parent
if a and a.has_key('href'): if a and a['href']:
ans = 'http://www.latimes.com'+a['href'] ans = 'http://www.latimes.com'+a['href']
self.log('Found full story link', ans) self.log('Found full story link', ans)
except: except:
@ -107,9 +112,6 @@ class LATimes(BasicNewsRecipe):
def preprocess_html(self, soup): def preprocess_html(self, soup):
for item in soup.findAll(style=True): for item in soup.findAll(style=True):
del item['style'] del item['style']
for item in soup.findAll('img'):
if not item.has_key('alt'):
item['alt'] = 'image'
for item in soup.findAll('a'): for item in soup.findAll('a'):
limg = item.find('img') limg = item.find('img')
if item.string is not None: if item.string is not None: