mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
76 lines
3.5 KiB
Plaintext
76 lines
3.5 KiB
Plaintext
from calibre.web.feeds.recipes import BasicNewsRecipe
|
|
|
|
|
|
class AdvancedUserRecipe1303841067(BasicNewsRecipe):
|
|
|
|
title = u'Golem.de'
|
|
__author__ = 'schuster'
|
|
|
|
oldest_article = 7
|
|
max_articles_per_feed = 10
|
|
no_stylesheets = True
|
|
use_embedded_content = False
|
|
language = 'de'
|
|
cover_url = 'http://www.e-energy.de/images/logo_golem.jpg'
|
|
masthead_url = 'http://www.golem.de/staticrl/images/logo.png'
|
|
extra_css = '''
|
|
h2{font-family:Arial,Helvetica,sans-serif; font-size: x-small;}
|
|
h1{ font-family:Arial,Helvetica,sans-serif; font-size:x-large; font-weight:bold;}
|
|
|
|
'''
|
|
remove_javascript = True
|
|
remove_tags_befor = [
|
|
dict(name='header', attrs={'class': 'cluster-header'})]
|
|
remove_tags_after = [dict(name='p', attrs={'class': 'meta'})]
|
|
remove_tags = [dict(rel='nofollow'),
|
|
dict(name='header', attrs={'id': 'header'}),
|
|
dict(name='div', attrs={'class': 'dh1'}),
|
|
dict(name='label', attrs={'class': 'implied'}),
|
|
dict(name='section', attrs={'id': 'comments'}),
|
|
dict(name='li', attrs={'class': 'gg_prebackcounterItem'}),
|
|
dict(name='li', attrs={
|
|
'class': 'gg_prebackcounterItem gg_embeddedIndexCounter'}),
|
|
dict(name='img', attrs={
|
|
'class': 'gg_embeddedIconRight gg_embeddedIconFS gg_cursorpointer'}),
|
|
dict(name='div', attrs={'target': '_blank'})
|
|
]
|
|
|
|
def get_browser(self, *args, **kwargs):
|
|
from calibre import browser
|
|
kwargs['user_agent'] = 'mozilla'
|
|
return browser(*args, **kwargs)
|
|
|
|
def get_article_url(self, article):
|
|
return article.get('id', article.get('guid', None))
|
|
|
|
def preprocess_html(self, soup):
|
|
for alink in soup.findAll('a'):
|
|
if alink.string is not None:
|
|
tstr = alink.string
|
|
alink.replaceWith(tstr)
|
|
return soup
|
|
|
|
feeds = [(u'Audio/Video', u'http://rss.golem.de/rss.php?tp=av&feed=RSS2.0'),
|
|
(u'Foto', u'http://rss.golem.de/rss.php?tp=foto&feed=RSS2.0'),
|
|
(u'Games', u'http://rss.golem.de/rss.php?tp=games&feed=RSS2.0'),
|
|
(u'Handy', u'http://rss.golem.de/rss.php?tp=handy&feed=RSS2.0'),
|
|
(u'Internet', u'http://rss.golem.de/rss.php?tp=inet&feed=RSS2.0'),
|
|
(u'Mobile', u'http://rss.golem.de/rss.php?tp=mc&feed=RSS2.0'),
|
|
(u'OSS', u'http://rss.golem.de/rss.php?tp=oss&feed=RSS2.0'),
|
|
(u'Politik/Recht', u'http://rss.golem.de/rss.php?tp=pol&feed=RSS2.0'),
|
|
(u'Security', u'http://rss.golem.de/rss.php?tp=sec&feed=RSS2.0'),
|
|
(u'Desktop-Applikationen',
|
|
u'http://rss.golem.de/rss.php?tp=apps&feed=RSS2.0'),
|
|
(u'Software-Entwicklung',
|
|
u'http://rss.golem.de/rss.php?tp=dev&feed=RSS2.0'),
|
|
(u'Wirtschaft', u'http://rss.golem.de/rss.php?tp=wirtschaft&feed=RSS2.0'),
|
|
(u'Hardware', u'http://rss.golem.de/rss.php?r=hw&feed=RSS2.0'),
|
|
(u'Software', u'http://rss.golem.de/rss.php?r=sw&feed=RSS2.0'),
|
|
(u'Networld', u'http://rss.golem.de/rss.php?r=nw&feed=RSS2.0'),
|
|
(u'Entertainment', u'http://rss.golem.de/rss.php?r=et&feed=RSS2.0'),
|
|
(u'TK', u'http://rss.golem.de/rss.php?r=tk&feed=RSS2.0'),
|
|
(u'Wirtschaft', u'http://rss.golem.de/rss.php?r=wi&feed=RSS2.0'),
|
|
(u'E-Commerce', u'http://rss.golem.de/rss.php?r=ec&feed=RSS2.0')
|
|
|
|
]
|