mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Actually fix firbes
This commit is contained in:
parent
c4aad96ba8
commit
07634194d0
@ -1,36 +1,49 @@
|
|||||||
|
import re
|
||||||
from calibre.web.feeds.news import BasicNewsRecipe
|
from calibre.web.feeds.news import BasicNewsRecipe
|
||||||
|
|
||||||
class Forbes(BasicNewsRecipe):
|
class Forbes(BasicNewsRecipe):
|
||||||
title = u'Forbes'
|
title = u'Forbes'
|
||||||
description = 'Business and Financial News'
|
description = 'Business and Financial News'
|
||||||
__author__ = 'Darko Miletic'
|
__author__ = 'Kovid Goyal'
|
||||||
oldest_article = 30
|
oldest_article = 30
|
||||||
max_articles_per_feed = 20
|
max_articles_per_feed = 20
|
||||||
language = 'en'
|
language = 'en'
|
||||||
|
encoding = 'utf-8'
|
||||||
|
recursions = 1
|
||||||
|
|
||||||
no_stylesheets = True
|
no_stylesheets = True
|
||||||
html2lrf_options = ['--base-font-size', '10']
|
|
||||||
auto_cleanup = True
|
|
||||||
|
|
||||||
cover_url = u'http://www.forbes.com/media/current_covers/forbes_120_160.gif'
|
cover_url = u'http://www.forbes.com/media/current_covers/forbes_120_160.gif'
|
||||||
|
|
||||||
feeds = [(u'Latest', u'http://www.forbes.com/news/index.xml'),
|
feeds = [(u'Latest', u'http://www.forbes.com/news/index.xml'),
|
||||||
(u'Most Popular', u'http://www.forbes.com/feeds/popstories.xml'),
|
(u'Most Popular', u'http://www.forbes.com/feeds/popstories.xml'),
|
||||||
(u'Most Emailed', u'http://www.forbes.com/feeds/mostemailed.xml'),
|
|
||||||
(u'Faces', u'http://www.forbes.com/facesscan/index.xml'),
|
|
||||||
(u'Technology', u'http://www.forbes.com/technology/index.xml'),
|
(u'Technology', u'http://www.forbes.com/technology/index.xml'),
|
||||||
(u'Personal Tech', u'http://www.forbes.com/personaltech/index.xml'),
|
|
||||||
(u'Wireless', u'http://www.forbes.com/wireless/index.xml'),
|
|
||||||
(u'Business', u'http://www.forbes.com/business/index.xml'),
|
(u'Business', u'http://www.forbes.com/business/index.xml'),
|
||||||
(u'Sports Money', u'http://www.forbes.com/sportsmoney/index.xml'),
|
(u'Sports Money', u'http://www.forbes.com/sportsmoney/index.xml'),
|
||||||
(u'Sports', u'http://www.forbes.com/forbeslife/sports/index.xml'),
|
|
||||||
(u'Vehicles', u'http://www.forbes.com/forbeslife/vehicles/index.xml'),
|
|
||||||
(u'Leadership', u'http://www.forbes.com/leadership/index.xml'),]
|
(u'Leadership', u'http://www.forbes.com/leadership/index.xml'),]
|
||||||
|
|
||||||
#def print_version(self, url):
|
keep_only_tags = \
|
||||||
#raw = self.browser.open(url).read()
|
{'class':lambda x: x and (set(x.split()) & {'body', 'pagination',
|
||||||
#soup = BeautifulSoup(raw.decode('latin1', 'replace'))
|
'articleHead', 'article_head'})}
|
||||||
#print_link = soup.find('a', {'onclick':"s_linkTrackVars='prop18';s_linkType='o';s_linkName='Print';if(typeof(globalPageName)!='undefined')s_prop18=globalPageName;s_lnk=s_co(this);s_gs(s_account);"})
|
remove_tags_before = {'name':'h1'}
|
||||||
#if print_link is None:
|
remove_tags = [
|
||||||
#return ''
|
{'class':['comment_bug', 'engagement_block',
|
||||||
#return 'http://www.forbes.com' + print_link['href']
|
'video_promo_block', 'article_actions']},
|
||||||
|
{'id':'comments'}
|
||||||
|
]
|
||||||
|
|
||||||
|
def is_link_wanted(self, url, tag):
|
||||||
|
ans = re.match(r'http://.*/[2-9]/', url) is not None
|
||||||
|
if ans:
|
||||||
|
self.log('Following multipage link: %s'%url)
|
||||||
|
return ans
|
||||||
|
|
||||||
|
def postprocess_html(self, soup, first_fetch):
|
||||||
|
for pag in soup.findAll(True, 'pagination'):
|
||||||
|
pag.extract()
|
||||||
|
if not first_fetch:
|
||||||
|
h1 = soup.find('h1')
|
||||||
|
if h1 is not None:
|
||||||
|
h1.extract()
|
||||||
|
return soup
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user