'
-'''
-www.defensenews.com
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class DefenseNews(BasicNewsRecipe):
- title = 'Defense News'
- __author__ = 'Darko Miletic'
- description = 'Find late-breaking defense news from the leading defense news weekly'
- publisher = 'Gannett Government Media Corporation'
- oldest_article = 31
- max_articles_per_feed = 200
- no_stylesheets = True
- encoding = 'cp1252'
- use_embedded_content = False
- language = 'en'
- remove_empty_feeds = True
- publication_type = 'newspaper'
- ignore_duplicate_articles = {'url'}
- masthead_url = 'http://www.defensenews.com/images/logo_defensenews2.jpg'
- extra_css = """
- body{font-family: Arial,Helvetica,sans-serif }
- img{margin-bottom: 0.4em; display:block}
- .info{font-size: small; color: gray}
- """
- remove_attributes = ['style', 'lang']
-
- keep_only_tags = [
- dict(attrs={'class': ['ody-hgroup', 'ody-article']}),
- ]
- remove_tags = [
- dict(name=['meta', 'link']),
- dict(attrs={'class': ['toolbar', 'toolsShareWrap', 'ody-bo-sm ',
- 'ody-comments', 'ody-related-links', 'left', 'right']}),
- dict(id=['factsMore', 'ody-nextstoryslider']),
- ]
-
- feeds = [
-
- (u'Europe', u'http://www.defensenews.com/rss/europe'),
- (u'Americas', u'http://www.defensenews.com/rss/americas'),
- (u'Asia & Pacific rim', u'http://www.defensenews.com/rss/asia-pacific-rim'),
- (u'Middle east & Africa', u'http://www.defensenews.com/rss/middle-east-africa'),
- (u'Air', u'http://www.defensenews.com/rss/air-warfare'),
- (u'Land', u'http://www.defensenews.com/rss/land-warfare'),
- (u'Naval', u'http://www.defensenews.com/rss/naval-warfare')
- ]
diff --git a/recipes/delco_times.recipe b/recipes/delco_times.recipe
deleted file mode 100644
index 249acb2cba..0000000000
--- a/recipes/delco_times.recipe
+++ /dev/null
@@ -1,24 +0,0 @@
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class HindustanTimes(BasicNewsRecipe):
- title = u'Delcoe Times'
- language = 'en'
- __author__ = 'Krittika Goyal'
- oldest_article = 1 # days
- max_articles_per_feed = 25
- use_embedded_content = False
-
- no_stylesheets = True
- auto_cleanup = True
-
- feeds = [
- ('News',
- 'http://www.delcotimes.com/?rss=news'),
- ('Sports',
- 'http://www.delcotimes.com/?rss=sports'),
- ('Business',
- 'http://business-news.thestreet.com/the-delaware-county-daily-times/rss/109393'),
- ('Entertainment',
- 'http://www.delcotimes.com/?rss=entertainment'),
- ]
diff --git a/recipes/demagog.cz.recipe b/recipes/demagog.cz.recipe
deleted file mode 100644
index e5d741f84a..0000000000
--- a/recipes/demagog.cz.recipe
+++ /dev/null
@@ -1,37 +0,0 @@
-# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
-from __future__ import unicode_literals
-
-import re
-
-from calibre.web.feeds.recipes import BasicNewsRecipe
-
-
-class demagogRecipe(BasicNewsRecipe):
- __author__ = 'bubak'
- title = u'Demagog.cz'
- publisher = u''
- description = 'demagog.cz'
- oldest_article = 6
- max_articles_per_feed = 20
- use_embedded_content = False
- remove_empty_feeds = True
-
- feeds = [
- (u'Aktuality', u'http://demagog.cz/rss')
- ]
-
- language = 'cs'
- cover_url = 'http://demagog.cz/content/images/demagog.cz.png'
- remove_javascript = True
- no_stylesheets = True
- extra_css = """
- .vyrok_suhrn{margin-top:50px; }
- .vyrok{margin-bottom:30px; }
- """
-
- remove_tags = [dict(name='a', attrs={'class': 'vyrok_odovodnenie_tgl'}),
- dict(name='img', attrs={'class': 'vyrok_fotografia'})]
- remove_tags_before = dict(name='h1')
- remove_tags_after = dict(name='div', attrs={'class': 'vyrok_text_after'})
- preprocess_regexps = [(re.compile(
- r'()', re.DOTALL | re.IGNORECASE), lambda match: '\1
')]
diff --git a/recipes/descopera_org.recipe b/recipes/descopera_org.recipe
deleted file mode 100644
index fc4483c743..0000000000
--- a/recipes/descopera_org.recipe
+++ /dev/null
@@ -1,29 +0,0 @@
-# -*- coding: utf-8 -*-
-'''
-descopera.org
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class Descopera(BasicNewsRecipe):
- title = u'Descoperă.org'
- __author__ = 'Marius Ignătescu'
- description = 'Descoperă. Placerea de a cunoaște'
- publisher = 'descopera.org'
- category = 'science, technology, culture, history, earth'
- language = 'ro'
- oldest_article = 14
- max_articles_per_feed = 100
- encoding = 'utf8'
- no_stylesheets = True
- extra_css = ' body{ font-family: Verdana,Helvetica,Arial,sans-serif } .introduction{font-weight: bold} .story-feature{display: block; padding: 0; border: 1px solid; width: 40%; font-size: small} .story-feature h2{text-align: center; text-transform: uppercase} ' # noqa
- keep_only_tags = [dict(name='div', attrs={'class': ['post']})]
- remove_tags = [dict(name='div', attrs={'class': [
- 'topnav', 'box_a', 'shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge']})]
- remove_attributes = ['width', 'height']
- cover_url = 'http://www.descopera.org/wp-content/themes/dorg/styles/default/img/b_top.png?width=400'
- feeds = [(u'Articles', u'http://www.descopera.org/feed/')]
-
- def preprocess_html(self, soup):
- return self.adeify_images(soup)
diff --git a/recipes/detroit_news.recipe b/recipes/detroit_news.recipe
deleted file mode 100644
index ed5dece9b6..0000000000
--- a/recipes/detroit_news.recipe
+++ /dev/null
@@ -1,74 +0,0 @@
-import re
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class AdvancedUserRecipe1297291961(BasicNewsRecipe):
- title = u'Detroit News'
- language = 'en'
- __author__ = 'DTM'
- oldest_article = 2
- max_articles_per_feed = 20
- no_stylesheets = True
- conversion_options = {
- 'linearize_tables': True,
- }
-
- feeds = [
- (u'Headlines', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss&mime=xml'),
- (u'Nation/World', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss09&mime=xml'),
- (u'Metro/State', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss36&mime=xml'),
- (u'Wayne County', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss01&mime=xml'),
- (u'Oakland County',
- u'http://www.detnews.com/apps/pbcs.dll/section?category=rss02&mime=xml'),
- (u'Macomb County', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss03&mime=xml'),
- (u'Livingston County',
- u'http://detnews.com/apps/pbcs.dll/section?category=rss04&mime=xml'),
- (u'Politics/Government',
- u'http://www.detnews.com/apps/pbcs.dll/section?category=rss10&mime=xml'),
- (u'Editorials', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss07&mime=xml'),
- (u'Columnists', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss43&mime=xml'),
- (u'Charlie LeDuff',
- u'http://detnews.com/apps/pbcs.dll/section?category=rss54&mime=xml'),
- (u'Religion', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss11&mime=xml'),
- (u'Technology', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss12&mime=xml'),
- (u'Commuting', u'http://detnews.com/apps/pbcs.dll/section?category=rss05&mime=xml'),
- (u'Schools', u'http://detnews.com/apps/pbcs.dll/section?category=rss06&mime=xml'),
- (u'Obituaries', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss08&mime=xml'),
- (u'Autos Insider', u'http://detnews.com/apps/pbcs.dll/section?category=rss25&mime=xml'),
- (u'Drive', u'http://detnews.com/apps/pbcs.dll/section?category=rss26&mime=xml'),
- (u'Business', u'http://detnews.com/apps/pbcs.dll/section?category=rss21&mime=xml'),
- (u'Personal Finance',
- u'http://detnews.com/apps/pbcs.dll/section?category=rss23&mime=xml'),
- (u'Real Estate', u'http://detnews.com/apps/pbcs.dll/section?category=rss24&mime=xml'),
- (u'Movies', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss28&mime=xml'),
- (u'TV', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss40&mime=xml'),
- (u'Music/Nightlife',
- u'http://www.detnews.com/apps/pbcs.dll/section?category=rss30&mime=xml'),
- (u'Celebrities', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss51&mime=xml'),
- (u'The Arts', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss27&mime=xml'),
- (u'Food', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss29&mime=xml'),
- (u'Homestyle', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss31&mime=xml'),
- (u'The Green Life',
- u'http://www.detnews.com/apps/pbcs.dll/section?category=rss53&mime=xml'),
- (u'Lifestyle', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss32&mime=xml'),
- (u'Health', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss34&mime=xml'),
- (u'Travel', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss52&mime=xml'),
- (u'Advice', u'http://www.detnews.com/apps/pbcs.dll/section?category=rss50&mime=xml'),
- (u'Pistons', u'http://detnews.com/apps/pbcs.dll/section?category=rss13&mime=xml'),
- (u'Lions', u'http://detnews.com/apps/pbcs.dll/section?category=rss14&mime=xml'),
- (u'Tigers', u'http://detnews.com/apps/pbcs.dll/section?category=rss15&mime=xml'),
- (u'Red Wings', u'http://detnews.com/apps/pbcs.dll/section?category=rss16&mime=xml'),
- (u'Michigan State',
- u'http://detnews.com/apps/pbcs.dll/section?category=rss18&mime=xml'),
- (u'University of Michigan',
- u'http://detnews.com/apps/pbcs.dll/section?category=rss17&mime=xml'),
- (u'Motor Sports', u'http://detnews.com/apps/pbcs.dll/section?category=rss20&mime=xml'),
- (u'Golf', u'http://detnews.com/apps/pbcs.dll/section?category=rss47&mime=xml'),
- (u'Outdoors', u'http://detnews.com/apps/pbcs.dll/section?category=rss19&mime=xml')
- ]
-
- def print_version(self, url):
- p = re.compile(r'(/\d{4}|/-1)/(rss|ENT|LIFESTYLE|OPINION|METRO)\d*')
- m = p.search(url)
- return url.replace(m.group(), '&template=printart')
diff --git a/recipes/diagonal.recipe b/recipes/diagonal.recipe
deleted file mode 100644
index 4521b05a0f..0000000000
--- a/recipes/diagonal.recipe
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/usr/bin/env python
-# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
-__license__ = 'GPL v3'
-__copyright__ = 'Ruben Pollan '
-__docformat__ = 'restructuredtext en'
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class AdvancedUserRecipe1335657507(BasicNewsRecipe):
- title = u'diagonal'
- __author__ = 'Ruben Pollan'
- description = 'Periodico quincenal de actualidad critica'
- language = 'es'
-
- oldest_article = 15
- max_articles_per_feed = 100
- auto_cleanup = True
- cover_url = u'http://diagonalperiodico.net/IMG/siteon0.jpg'
-
- feeds = [(u'Panorama', u'http://diagonalperiodico.net/-Panorama-.html?page=backend'),
- (u'Global', u'http://diagonalperiodico.net/-Global,104-.html?page=backend'),
- (u'Fotonoticia - Galería',
- u'http://diagonalperiodico.net/-Fotonoticia-Galeria-.html?page=backend'),
- (u'Libertades y Derechos',
- u'http://diagonalperiodico.net/-Libertades-y-Derechos,77-.html?page=backend'),
- (u'Saberes', u'http://diagonalperiodico.net/-Saberes,78-.html?page=backend'),
- (u'En movimiento',
- u'http://diagonalperiodico.net/-En-movimiento-.html?page=backend'),
- (u'Culturas', u'http://diagonalperiodico.net/-Culturas,89-.html?page=backend'),
- (u'Cuerpo', u'http://diagonalperiodico.net/-Cuerpo,99-.html?page=backend'),
- (u'La plaza', u'http://diagonalperiodico.net/-La-plaza-.html?page=backend'),
- (u'Enfoques', u'http://diagonalperiodico.net/-Enfoques,106-.html?page=backend'),
- (u'Humor - Galería',
- u'http://diagonalperiodico.net/-Humor-Galeria-.html?page=backend'),
- (u'Entrevistas digitales',
- u'http://diagonalperiodico.net/-Entrevistas-Digitales-.html?page=backend'),
- (u'Cartas a diagonal',
- u'http://diagonalperiodico.net/-Cartas-a-Diagonal-.html?page=backend'),
- (u'Blogs', u'http://diagonalperiodico.net/-Blogs-.html?page=backend')]
-
- def get_article_url(self, article):
- link = article.get('link')
- return 'http://diagonalperiodico.net/' + link
diff --git a/recipes/diario_cordoba.recipe b/recipes/diario_cordoba.recipe
deleted file mode 100644
index 20259d139d..0000000000
--- a/recipes/diario_cordoba.recipe
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/env python
-
-__license__ = 'GPL v3'
-__copyright__ = '2009, Darko Miletic '
-'''
-diariocordoba.com
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class Diariosur(BasicNewsRecipe):
- title = u'Diario Cordoba'
- __author__ = u'Francisco'
- description = u'News Cordoba'
- oldest_article = 5
- max_articles_per_feed = 100
- delay = 0
- timeout = 120
- no_stylesheets = True
- use_embedded_content = False
- encoding = 'UTF-8'
- remove_javascript = True
- language = 'es'
- extra_css = 'body{font-family: Arial,Helvetica,sans-serif}'
-
- remove_attributes = ['height', 'width']
-
- keep_only_tags = [
- dict(name='div', attrs={'id': 'contenidos'})
- ]
-
- remove_tags = [
- dict(name='div', attrs={'class': 'Recorte'}),
- dict(name='div', attrs={'id': 'comentarios'}),
- dict(name='div', attrs={'id': 'CajaAccesoCuentaUsuario'}),
- dict(name='div', attrs={'id': 'cajacomparte'}),
- dict(name='div', attrs={'class': 'FormularioDeAcceso'}),
- dict(name='div', attrs={'class': 'TextoFormularioDeAcceso'}),
- dict(name='div', attrs={'class': 'Recorte'}),
- dict(name='div', attrs={'id': 'IframeCajaComparte'}),
- dict(name='div', attrs={'id': 'CintilloComentario'}),
- dict(name='div', attrs={'id': 'EscribeComentario'}),
- dict(name='div', attrs={'class': 'Nota'}),
- dict(name='div', attrs={'id': 'FormularioComentario'}),
- dict(name='div', attrs={'id': 'Comparte'}),
- dict(name='iframe', attrs={'id': 'IframeCajaComparte'}),
- dict(name='ul', attrs={'class': 'herramientasDeNoticia'}),
- dict(name='div', attrs={'id': 'NoticiaEnPapel'}),
- dict(name='div', attrs={'class': 'navegaNoticias'}),
- dict(name='p', attrs={'class': 'RecorteEnNoticias'}),
- dict(name='ul', attrs={'class': 'herramientasDeNoticia'}),
- dict(name='div', attrs={'class': 'navegaNoticias'}),
- dict(name='div', attrs={'id': 'CajaComparte'}),
- dict(name='div', attrs={'id': 'Comparte'})
-
-
-
- ]
-
- html2lrf_options = [
- '--comment', description, '--base-font-size', '6', '--category', 'news, Spain', '--ignore-tables'
- ]
-
- feeds = [
- (u'Ultima Hora', 'http://www.diariocordoba.com/rss/ultimahora.xml'),
- (u'Tema del Dia', 'http://www.diariocordoba.com/rss/106.xml'),
- (u'Local', 'http://www.diariocordoba.com/rss/101.xml'),
- (u'Provincia', 'http://www.diariocordoba.com/rss/102.xml'),
- (u'Andalucia', 'http://www.diariocordoba.com/rss/1.xml'),
- (u'Opinion', 'http://www.diariocordoba.com/rss/100.xml'),
- (u'Deportes', 'http://www.diariocordoba.com/rss/4.xml'),
- (u'Espa\xc3\xb1a', 'http://www.diariocordoba.com/rss/7.xml'),
- (u'Internacional', 'http://www.diariocordoba.com/rss/6.xml'),
- (u'Economia', 'http://www.diariocordoba.com/rss/5.xml'),
- (u'Cultura', 'http://www.diariocordoba.com/rss/3.xml'),
- (u'Sociedad', 'http://www.diariocordoba.com/rss/103.xml'),
- (u'Gente', 'http://www.diariocordoba.com/rss/204.xml'),
- (u'Noticias Curiosas', 'http://www.diariocordoba.com/rss/205.xml'),
- (u'Tecnologia', 'http://www.diariocordoba.com/rss/206.xml')
-
-
- ]
diff --git a/recipes/diario_de_noticias.recipe b/recipes/diario_de_noticias.recipe
deleted file mode 100644
index 206443f5a8..0000000000
--- a/recipes/diario_de_noticias.recipe
+++ /dev/null
@@ -1,25 +0,0 @@
-# vim:fileencoding=UTF-8
-
-from __future__ import unicode_literals
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class AdvancedUserRecipe1365070687(BasicNewsRecipe):
- title = 'Diário de Notícias'
- oldest_article = 7
- language = 'pt'
- __author__ = 'Jose Pinto'
- max_articles_per_feed = 100
- keep_only_tags = [dict(name='div', attrs={'id': 'cln-esqmid'})]
- remove_tags = [dict(name='table', attrs={'class': 'TabFerramentasInf'})]
-
- feeds = [(u'Portugal', u'http://feeds.dn.pt/DN-Portugal'),
- (u'Globo', u'http://feeds.dn.pt/DN-Globo'),
- (u'Economia', u'http://feeds.dn.pt/DN-Economia'),
- (u'Ci\xeancia', u'http://feeds.dn.pt/DN-Ciencia'),
- (u'Artes', u'http://feeds.dn.pt/DN-Artes'),
- (u'TV & Media', u'http://feeds.dn.pt/DN-Media'),
- (u'Opini\xe3o', u'http://feeds.dn.pt/DN-Opiniao'),
- (u'Pessoas', u'http://feeds.dn.pt/DN-Pessoas')
- ]
diff --git a/recipes/diario_extra.recipe b/recipes/diario_extra.recipe
deleted file mode 100644
index cacd574fe9..0000000000
--- a/recipes/diario_extra.recipe
+++ /dev/null
@@ -1,47 +0,0 @@
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class goonews(BasicNewsRecipe):
- __author__ = 'Douglas Delgado'
- title = u'Diario Extra'
- publisher = 'Sociedad Periodistica Extra Limitada'
- description = 'Diario de circulacion nacional de Costa Rica.'
- category = 'Spanish, Entertainment'
- masthead_url = 'http://www.diarioextra.com/img/apariencia/logo.png'
-
- oldest_article = 7
- delay = 1
- max_articles_per_feed = 100
- auto_cleanup = True
- encoding = 'utf-8'
- language = 'es_CR'
- use_embedded_content = False
- remove_empty_feeds = True
- remove_javascript = True
- no_stylesheets = True
-
- feeds = [(u'Nacionales',
- u'http://www.diarioextra.com/includes/rss_text.php?id=1'),
- (u'Internacionales',
- u'http://www.diarioextra.com/includes/rss_text.php?id=2'),
- (u'Sucesos',
- u'http://www.diarioextra.com/includes/rss_text.php?id=3'),
- (u'Deportes',
- u'http://www.diarioextra.com/includes/rss_text.php?id=6'),
- (u'Espectaculos',
- u'http://www.diarioextra.com/includes/rss_text.php?id=7'),
- (u'Opinion',
- u'http://www.diarioextra.com/includes/rss_text.php?id=4')]
-
- def get_cover_url(self):
- index = 'http://kiosko.net/cr/np/cr_extra.html'
- soup = self.index_to_soup(index)
- for image in soup.findAll('img', src=True):
- if image['src'].endswith('cr_extra.750.jpg'):
- return image['src']
- return None
-
- extra_css = '''
- h1{font-family:Arial,Helvetica,sans-serif; font-weight:bold;font-size:30px;}
- h2{font-family:Arial,Helvetica,sans-serif; font-weight:normal; font-style:italic; font-size:18px;}
- '''
diff --git a/recipes/diario_la_republica.recipe b/recipes/diario_la_republica.recipe
deleted file mode 100644
index dfcc62d373..0000000000
--- a/recipes/diario_la_republica.recipe
+++ /dev/null
@@ -1,13 +0,0 @@
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class AdvancedUserRecipe1317341449(BasicNewsRecipe):
- title = u'Diario La Republica'
- __author__ = 'CAVALENCIA'
- oldest_article = 7
- max_articles_per_feed = 100
- auto_cleanup = True
- language = 'es_CO'
-
- feeds = [(u'Diario La Republica',
- u'http://www.larepublica.com.co/rss/larepublica.xml')]
diff --git a/recipes/digit_magazine.recipe b/recipes/digit_magazine.recipe
deleted file mode 100644
index 66c1c5890a..0000000000
--- a/recipes/digit_magazine.recipe
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/usr/bin/env python
-# vim:fileencoding=utf-8
-from calibre.web.feeds.news import BasicNewsRecipe, classes
-
-
-class Digit(BasicNewsRecipe):
- title = u'Digit Magazine'
- description = 'Digit caters to the largest community of tech buyers, users and enthusiasts in India.'
- language = 'en_IN'
- __author__ = 'unkn0wn'
- oldest_article = 30 # days
- max_articles_per_feed = 50
- encoding = 'utf-8'
- use_embedded_content = False
- no_stylesheets = True
- masthead_url = 'https://www.digit.in/images/digit_logo.png'
- remove_attributes = ['style', 'height', 'width']
- ignore_duplicate_articles = {'title', 'url'}
-
- def get_cover_url(self):
- soup = self.index_to_soup(
- 'https://store.digit.in/cart.php?category_id=139&year='
- )
- tag = soup.find(attrs={'class': 'previous-magazines'})
- if tag:
- self.cover_url = tag.find('img')['src']
- return super().get_cover_url()
-
- keep_only_tags = [
- classes(
- 'big_img_container highlights_cont Top-sponsered Text-sponsered heading-wraper article_video'
- 'article-inside-container skoar_desc New-desk pros-Cons Review-reting For-table col-md-7'
- 'review-inside-container price_wrap key_specifications'
- ),
- ]
-
- remove_tags = [
- classes(
- 'adsAdvert Video-wraper article_share auth_social breadcrumbwrap textads_list rel_articles_container'
- ),
- ]
-
- feeds = [
- ('Features', 'http://feeds.feedburner.com/digit/latest-features'),
- ('Reviews', 'http://feeds.feedburner.com/digit/latest-review'),
- ('Laptops', 'https://feeds.feedburner.com/digit/latest-laptops'),
- ('PC Components', 'https://feeds.feedburner.com/digit/latest-pc-components'),
- ('Tablets', 'https://feeds.feedburner.com/digit/latest-tablets'),
- ('TVs', 'https://feeds.feedburner.com/digit/latest-tvs'),
- (
- 'Wearable devices',
- 'https://feeds.feedburner.com/digit/latest-wearable-devices'
- ),
- ('How-to', 'https://feeds.feedburner.com/digit/how-to'),
- ('Entertainment', 'https://feeds.feedburner.com/digit/latest-entertainment'),
- ('Gaming', 'http://feeds.feedburner.com/digit/latest-gaming'),
- ('Software', 'https://feeds.feedburner.com/digit/latest-software'),
- ('Audio-Video', 'https://feeds.feedburner.com/digit/latest-audio-video'),
- # ('Apps', 'https://feeds.feedburner.com/digit/latest-apps'),
- # ('Mobile Phones', 'https://feeds.feedburner.com/digit/latest-mobile-phones'),
- # For more : https://www.digit.in/rss-feed/
- ]
diff --git a/recipes/digital_arts.recipe b/recipes/digital_arts.recipe
deleted file mode 100644
index 4e497f196f..0000000000
--- a/recipes/digital_arts.recipe
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/bin/env python
-__license__ = 'GPL v3'
-__author__ = 'Lorenzo Vigentini'
-__copyright__ = '2009, Lorenzo Vigentini '
-__version__ = 'v1.01'
-__date__ = '14, January 2010'
-
-'''
-http://media.digitalartsonline.co.uk/
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-temp_files = []
-articles_are_obfuscated = True
-
-
-class digiArts(BasicNewsRecipe):
- __author__ = 'Lorenzo Vigentini'
- description = ('Digital Arts - comprehensive coverage of the art of '
- 'graphic design, 3D, animation, video, effects, web and '
- 'interactive design, in print and online.') # noqa
- cover_url = 'http://media.digitalartsonline.co.uk/graphics/logo_digital_arts.gif'
-
- title = 'Digital Arts Magazine '
- publisher = 'IDG Communication'
- category = ('Multimedia, photo, video, computing, product reviews, '
- 'editing, cameras, production')
-
- language = 'en'
- encoding = 'cp1252'
- timefmt = '[%a, %d %b, %Y]'
-
- oldest_article = 30
- max_articles_per_feed = 100
- use_embedded_content = False
- recursion = 10
-
- remove_javascript = True
- no_stylesheets = True
- auto_cleanup = False
-
- keep_only_tags = [
- dict(name='h1', attrs={'itemprop': 'headline'}),
- dict(name='span', attrs={'itemprop': 'author'}),
- dict(name='section', attrs={'class': 'articleBody'}),
- ]
-
- # Feed are found here: http://www.digitalartsonline.co.uk/rss/
- feeds = [
- ('Latest News Articles',
- 'http://www.digitalartsonline.co.uk/rss/feeds/digitalarts-news.xml'),
- ('Latest Tutorials',
- 'http://www.digitalartsonline.co.uk/rss/feeds/digitalarts-tutorials.xml'),
- ('Latest Reviews',
- 'http://www.digitalartsonline.co.uk/rss/feeds/digitalarts-reviews.xml'),
- ('Latest Features',
- 'http://www.digitalartsonline.co.uk/rss/feeds/digitalarts-features.xml'),
- ]
diff --git a/recipes/digitaljournal.recipe b/recipes/digitaljournal.recipe
deleted file mode 100644
index a0955154bf..0000000000
--- a/recipes/digitaljournal.recipe
+++ /dev/null
@@ -1,51 +0,0 @@
-__license__ = 'GPL v3'
-__copyright__ = '2010, Darko Miletic '
-'''
-digitaljournal.com
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class DigitalJournal(BasicNewsRecipe):
- title = 'Digital Journal'
- __author__ = 'Darko Miletic'
- description = 'A Global Citizen Journalism News Network'
- category = 'news, politics, USA, world'
- publisher = 'Digital Journal'
- oldest_article = 2
- max_articles_per_feed = 100
- no_stylesheets = True
- use_embedded_content = False
- encoding = 'utf8'
- language = 'en'
-
- conversion_options = {
- 'comments': description, 'tags': category, 'language': language, 'publisher': publisher
- }
-
- keep_only_tags = [
- dict(id='article_text'),
- ]
-
- remove_tags = [
- dict(attrs={'class': lambda x: x and 'article-top-social' in x}),
- ]
-
- feeds = [
-
- (u'Latest News', u'http://digitaljournal.com/rss/?feed=latest_news'),
- (u'Business', u'http://digitaljournal.com/rss/?feed=top_news&depname=Business'),
- (u'Entertainment', u'http://digitaljournal.com/rss/?feed=top_news&depname=Entertainment'),
- (u'Environment', u'http://digitaljournal.com/rss/?feed=top_news&depname=Environment'),
- (u'Food', u'http://digitaljournal.com/rss/?feed=top_news&depname=Food'),
- (u'Health', u'http://digitaljournal.com/rss/?feed=top_news&depname=Health'),
- (u'Internet', u'http://digitaljournal.com/rss/?feed=top_news&depname=Internet'),
- (u'Politics', u'http://digitaljournal.com/rss/?feed=top_news&depname=Politics'),
- (u'Religion', u'http://digitaljournal.com/rss/?feed=top_news&depname=Religion'),
- (u'Science', u'http://digitaljournal.com/rss/?feed=top_news&depname=Science'),
- (u'Sports', u'http://digitaljournal.com/rss/?feed=top_news&depname=Sports'),
- (u'Technology', u'http://digitaljournal.com/rss/?feed=top_news&depname=Technology'),
- (u'World', u'http://digitaljournal.com/rss/?feed=top_news&depname=World'),
- (u'Arts', u'http://digitaljournal.com/rss/?feed=top_news&depname=Arts')
- ]
diff --git a/recipes/digitalspy_uk.recipe b/recipes/digitalspy_uk.recipe
deleted file mode 100644
index c461d3fa0a..0000000000
--- a/recipes/digitalspy_uk.recipe
+++ /dev/null
@@ -1,41 +0,0 @@
-
-__license__ = 'GPL v3'
-__copyright__ = '2010, Darko Miletic '
-'''
-www.digitalspy.co.uk
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class DigitalSpyUK(BasicNewsRecipe):
- title = 'Digital Spy - UK Edition'
- __author__ = 'Darko Miletic'
- description = 'Entertainment news about the biggest TV shows, films and celebrities, updated around the clock.'
- publisher = 'Digital Spy Limited.'
- category = 'news, showbiz, big brother, x factor, torchwood, doctor who, tv, media, sky, freeview, cable'
- oldest_article = 2
- max_articles_per_feed = 100
- no_stylesheets = True
- encoding = 'cp1252'
- use_embedded_content = False
- language = 'en_GB'
- remove_empty_feeds = True
- extra_css = ' body{font-family: Verdana,Arial,Helvetica,sans-serif } img{margin-bottom: 0.4em} .info{font-size: small} '
-
- conversion_options = {
- 'comment': description, 'tags': category, 'publisher': publisher, 'language': language
- }
-
- remove_tags = [dict(name=['link'])]
- remove_attributes = ['height', 'width']
- keep_only_tags = [dict(name='div', attrs={'id': 'content'})]
-
- feeds = [
-
- (u'News', u'http://www.digitalspy.co.uk/rss/zones/gb/all.xml'),
- (u'Big Brother', u'http://www.digitalspy.co.uk/rss/zones/gb/bigbrother.xml'),
- (u'Entertainment', u'http://www.digitalspy.co.uk/rss/zones/gb/entertainment.xml'),
- (u'General', u'http://www.digitalspy.co.uk/rss/zones/gb/general.xml'),
- (u'Media', u'http://www.digitalspy.co.uk/rss/zones/gb/media.xml')
- ]
diff --git a/recipes/dilbert.recipe b/recipes/dilbert.recipe
deleted file mode 100644
index 60a93d64f8..0000000000
--- a/recipes/dilbert.recipe
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/usr/bin/env python
-# vim:fileencoding=utf-8
-
-import os
-import tempfile
-
-from calibre.web.feeds.recipes import BasicNewsRecipe
-
-
-class Dilbert(BasicNewsRecipe):
- title = u'Dilbert'
- __author__ = 'TechnoCat'
- description = 'Dilbert, by Scott Adams. Includes last three or so comics and blog entries.'
- cover_url = 'http://dilbert.com/assets/dilbert-logo-4152bd0c31f7de7443b4bc90abd818da.png'
- auto_cleanup = True
- encoding = 'utf8'
- language = 'en'
- needs_subscription = False
- no_stylesheets = True
- oldest_article = 7
- remove_javascript = True
- recursions = 0
- max_articles_per_feed = 20
- debugMessages = True
- BASE_URL = 'http://dilbert.com' # Note no www.
- COMIC_DIV_TAG = 'img-comic-container'
- BLOG_DIV_TAG = 'media'
- tempfiles = []
-
- # Creates a temp file for the wrapped image url
- def writeImage(self, title, imageURL) :
- tempFile = tempfile.NamedTemporaryFile(delete=False)
- self.tempfiles.append(tempFile)
- tempFile.write(''+title+'')
- tempFile.write(imageURL.prettify())
- tempFile.write('')
- tempFile.flush()
- tempFile.close()
- return tempFile.name
-
- def cleanUpTempFiles(self):
- for tempFile in self.tempfiles:
- tempFile.close()
- os.unlink(tempFile.name)
-
- def cleanup(self):
- self.cleanUpTempFiles()
-
- # Extract comic links from the soup
- # Returns a list of comics (articles) as:
- # {
- # 'title' : article title,
- # 'url' : URL of print version,
- # 'date' : The publication date of the article as a string,
- # 'description' : A summary of the article
- # 'content' : The full article (can be an empty string). This is used by FullContentProfile
- # }
- def comicFeed(self, soup) :
- feedset = []
- for comicContainer in soup.findAll('div', {'class': self.COMIC_DIV_TAG}) :
- comic = comicContainer.find('img')
- if comic is not None:
- filelink = self.writeImage(comic['alt'], comic)
- feedset.append(
- dict(title=comic['alt'], url='file://'+filelink, description=comic['alt'], content=''))
- return feedset
-
- def blogFeed(self, soup) :
- feedset = []
- for blogContainer in soup.findAll('div', {'class': self.BLOG_DIV_TAG}) :
- blog = blogContainer.find('a', {'class':'link-blended'})
- if blog is not None:
- feedset.append(
- dict(title=blog['title'], url=blog['href'], description=blog['title'], content=''))
- return feedset
-
- def parse_index(self):
- root = self.index_to_soup(self.BASE_URL)
- comics = self.comicFeed(root)
- blogs = self.blogFeed(root)
- return [('Comics', comics), ('Blog Entries', blogs)]
diff --git a/recipes/dilemaveche.recipe b/recipes/dilemaveche.recipe
deleted file mode 100644
index e4633c0c61..0000000000
--- a/recipes/dilemaveche.recipe
+++ /dev/null
@@ -1,149 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-
-from __future__ import print_function
-
-__license__ = 'GPL v3'
-__copyright__ = u'2014-01-09, Silviu Cotoar\u0103, Marius Popescu'
-'''
-dilemaveche.ro
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class DilemaVeche(BasicNewsRecipe):
- # apare vinerea, mai pe dupa-masa,depinde de Luiza cred (care se semneaza
- # ca fiind creatorul fiecarui articol in feed-ul RSS)
- title = u'Dilema Veche'
- # inspirat din scriptul pentru Le Monde. Inspired from the Le Monde script
- __author__ = 'song2'
- description = '"Sint vechi, domnule!" (I.L. Caragiale)'
- publisher = 'Adevarul Holding'
- oldest_article = 7
- language = 'ro'
- max_articles_per_feed = 150
- encoding = 'utf-8'
- simultaneous_downloads = 5
- masthead_url = 'http://www.dilemaveche.ro/sites/all/themes/dilema/theme/dilema_two/layouter/dilema_two_homepage/logo.png'
- needs_subscription = True
- use_embedded_content = False
- publication_type = 'magazine'
- remove_javascript = True
- no_stylesheets = True
- remove_empty_feeds = True
- feeds = [
- ('Editoriale si opinii - Situatiunea',
- 'http://www.dilemaveche.ro/taxonomy/term/37/0/feed'),
- ('Editoriale si opinii - Pe ce lume traim',
- 'http://www.dilemaveche.ro/taxonomy/term/38/0/feed'),
- ('Editoriale si opinii - Bordeie si obiceie',
- 'http://www.dilemaveche.ro/taxonomy/term/44/0/feed'),
- ('Editoriale si opinii - Talc Show',
- 'http://www.dilemaveche.ro/taxonomy/term/39/0/feed'),
- ('Tema saptamanii', 'http://www.dilemaveche.ro/taxonomy/term/19/0/feed'),
- ('La zi in cultura - Dilema va recomanda',
- 'http://www.dilemaveche.ro/taxonomy/term/58/0/feed'),
- ('La zi in cultura - Carte',
- 'http://www.dilemaveche.ro/taxonomy/term/14/0/feed'),
- ('La zi in cultura - Film',
- 'http://www.dilemaveche.ro/taxonomy/term/13/0/feed'),
- ('La zi in cultura - Muzica',
- 'http://www.dilemaveche.ro/taxonomy/term/1341/0/feed'),
- ('La zi in cultura - Arte performative',
- 'http://www.dilemaveche.ro/taxonomy/term/1342/0/feed'),
- ('La zi in cultura - Arte vizuale',
- 'http://www.dilemaveche.ro/taxonomy/term/1512/0/feed'),
- ('Societate - Ieri cu vedere spre azi',
- 'http://www.dilemaveche.ro/taxonomy/term/15/0/feed'),
- ('Societate - Din polul opus',
- 'http://www.dilemaveche.ro/taxonomy/term/41/0/feed'),
- ('Societate - Mass comedia',
- 'http://www.dilemaveche.ro/taxonomy/term/43/0/feed'),
- ('Societate - La singular si la plural',
- 'http://www.dilemaveche.ro/taxonomy/term/42/0/feed'),
- ('Oameni si idei - Educatie',
- 'http://www.dilemaveche.ro/taxonomy/term/46/0/feed'),
- ('Oameni si idei - Polemici si dezbateri',
- 'http://www.dilemaveche.ro/taxonomy/term/48/0/feed'),
- ('Oameni si idei - Stiinta si tehnologie',
- 'http://www.dilemaveche.ro/taxonomy/term/47/0/feed'),
- # online only articles
- ('Dileme on-line', 'http://www.dilemaveche.ro/taxonomy/term/5/0/feed'),
- # once per month, 6-7 day of the month
- ('Dilemateca', 'http://dilemaveche.ro/taxonomy/term/21/0/feed'),
- # children, once-twice per year
- ('Dilematix', 'http://dilemaveche.ro/taxonomy/term/20/0/feed'),
- ('Dilema Studiilor Postuniversitare',
- 'http://dilemaveche.ro/taxonomy/term/1635/0/feed') # once per year, July
- ]
- remove_tags_before = dict(name='div', attrs={'class': 'spacer_10'})
- remove_tags = [
- dict(name='div', attrs={'id': ['adshop_widget_428x60']}),
- dict(name='div', attrs={'id': ['gallery']}),
- dict(name='div', attrs={'class': ['art_related_left']}),
- dict(name='a', attrs={'class': ['prevPage']}),
- dict(name='a', attrs={'class': ['nextPage']}),
- dict(name='div', attrs={'class': ['article_details']}),
- dict(name='div', attrs={'id': ['comments']}),
- dict(name='ul', attrs={'class': ['social-buttons-list']}),
- dict(name='a', attrs={'class': ['editie']}),
- dict(name='div', attrs={'class': 'simple_overlay'}),
- dict(name='div', attrs={'class': 'c_right_column'}),
- dict(name='div', attrs={'id': 'content_right'}),
- dict(name='div', attrs={'class': 'box_shadow_top'}),
- dict(name='div', attrs={'class': 'box_shadow_bottom'}),
- dict(name='div', attrs={'id': ['footer']}),
- dict(name='div', attrs={'class': ['clear spacer_20']}),
- dict(name='div', attrs={'id': ['adh-footer']}),
- dict(name='div', attrs={'id': ['skyright']}),
- dict(name='div', attrs={'id': ['closure']})
- ]
- remove_tags_after = [
- dict(name='div', attrs={'id': ['adshop_widget_428x60']})
- ]
- extra_css = """
- body{font-family: Georgia,Times,serif }
- img{margin-bottom: 0.4em; display:block}
- """
-
- def get_browser(self):
- br = BasicNewsRecipe.get_browser(self)
- if self.username is not None and self.password is not None:
- br.open(
- 'http://pay.dilemaveche.ro/autentificare/?redirect=http%3A%2F%2Fdilemaveche.ro%2F%2F&return=true')
- br.select_form(nr=0)
- br['username'] = self.username
- br['password'] = self.password
- br.submit()
- return br
-
- def preprocess_html(self, soup):
- return self.adeify_images(soup)
-
- def get_cover_url(self):
- # small, from the current number article: http://dilemaveche.ro/sites/default/files/imagecache/articol_teaser/DV517web-1_copy.JPG
- # medium, from the homepage PDF link: http://dilemaveche.ro/sites/default/files/imagecache/editie_small/DV517web-1_copy_0.JPG
- # big, from the current number article, click on the samll image:
- # http://dilemaveche.ro/sites/default/files/imagecache/image_gallery_large/DV517web-1_copy.JPG
- cover_url = None
- soup = self.index_to_soup('http://dilemaveche.ro')
- link_item = soup.find('div', attrs={'class': 'box_dr_pdf_picture'})
- if link_item and link_item.a:
- cover_url = link_item.a['href']
- br = BasicNewsRecipe.get_browser(self)
- try:
- br.open(cover_url)
- except: # daca nu gaseste pdf-ul
- self.log("\nPDF indisponibil")
- link_item = soup.find('div', attrs={'class': 'box_dr_pdf_picture'})
- if link_item and link_item.img:
- cover_url = link_item.img['src']
- br = BasicNewsRecipe.get_browser(self)
- try:
- br.open(cover_url)
- except: # daca nu gaseste nici imaginea mica mica
- print('nu este nici pdf nici imagine')
- cover_url = 'http://www.dilemaveche.ro/sites/all/themes/dilema/theme/dilema_two/layouter/dilema_two_homepage/logo.png'
- return cover_url
- cover_margins = (10, 15, '#ffffff')
diff --git a/recipes/dingoo_a320.recipe b/recipes/dingoo_a320.recipe
deleted file mode 100644
index f0f4a1c08e..0000000000
--- a/recipes/dingoo_a320.recipe
+++ /dev/null
@@ -1,25 +0,0 @@
-# vim:fileencoding=UTF-8
-from __future__ import unicode_literals
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class Dingoo(BasicNewsRecipe):
- language = 'ru'
- __author__ = 'bug_me_not'
- title = u'Dingoo A320. \u0420\u0443\u0441\u0441\u043a\u0438\u0439 \u0440\u0435\u0441\u0443\u0440\u0441'
- description = 'Портативная игровая консоль Dingoo A320 и другие необычные гаджеты'
- publisher = 'Emulate.SU'
- category = 'console'
- cover_url = u'http://upload.wikimedia.org/wikipedia/commons/thumb/0/02/Dingoo_A320_White.jpg/300px-Dingoo_A320_White.jpg'
- no_stylesheets = False
- remove_javascript = True
-
- oldest_article = 20
- max_articles_per_feed = 200
-
- feeds = [(u'A320', u'http://feeds.feedburner.com/ru_dingoo')]
-
- remove_tags_before = dict(name='div', attrs={'class': 'posttitle'})
- remove_tags_after = dict(name='div', attrs={'class': 'article'})
- remove_tags = [dict(name='iframe')]
diff --git a/recipes/divahair.recipe b/recipes/divahair.recipe
deleted file mode 100644
index fc0249d506..0000000000
--- a/recipes/divahair.recipe
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-
-__license__ = 'GPL v3'
-__copyright__ = u'2011, Silviu Cotoar\u0103'
-'''
-divahair.ro
-'''
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class DivaHair(BasicNewsRecipe):
- title = u'Diva Hair'
- language = 'ro'
- __author__ = u'Silviu Cotoar\u0103'
- description = u'Coafuri, frizuri, tunsori ..'
- publisher = u'Diva Hair'
- category = u'Ziare,Stiri,Coafuri,Femei'
- oldest_article = 5
- max_articles_per_feed = 100
- no_stylesheets = True
- use_embedded_content = False
- encoding = 'utf-8'
- remove_javascript = True
- cover_url = 'http://www.divahair.ro/imgs/logo.jpg'
-
- conversion_options = {
- 'comments': description, 'tags': category, 'language': language, 'publisher': publisher
- }
-
- keep_only_tags = [
- dict(name='td', attrs={'class': 'spatiuart'}), dict(
- name='div', attrs={'class': 'spatiuart'})
- ]
-
- remove_tags = [
- dict(name='div', attrs={'class': 'categorie'}), dict(name='div', attrs={
- 'class': 'gri gri2 detaliiart'}), dict(name='div', attrs={'class': 'articol_box_bottom'})
- ]
-
- remove_tags_after = [
- dict(name='div', attrs={'class': 'articol_box_bottom'})
- ]
-
- feeds = [(u'\u0218tiri', u'http://www.divahair.ro/feed')]
-
- def preprocess_html(self, soup):
- return self.adeify_images(soup)
diff --git a/recipes/djurslandsposten_dk.recipe b/recipes/djurslandsposten_dk.recipe
deleted file mode 100644
index 31c5b80441..0000000000
--- a/recipes/djurslandsposten_dk.recipe
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/env python
-# vim:fileencoding=utf-8
-# https://manual.calibre-ebook.com/news_recipe.html
-from __future__ import absolute_import, division, print_function, unicode_literals
-
-from calibre.web.feeds.news import BasicNewsRecipe
-
-'''
-DjurslandsPosten
-'''
-
-
-class DjurslandsPosten_dk(BasicNewsRecipe):
- __author__ = 'CoderAllan.github.com'
- title = 'DjurslandsPosten'
- description = 'Lokale og regionale nyheder'
- category = 'newspaper, news, localnews, Denmark'
- oldest_article = 7
- max_articles_per_feed = 50
- auto_cleanup = True
- language = 'da'
-
- feeds = [
- ('Nyheder', 'http://www.dinby.dk/djurslandsposten/rss'),
- ]
-
diff --git a/recipes/dnevnik.recipe b/recipes/dnevnik.recipe
deleted file mode 100644
index 417c5ef542..0000000000
--- a/recipes/dnevnik.recipe
+++ /dev/null
@@ -1,65 +0,0 @@
-__license__ = 'GPL v3'
-__copyright__ = '2010, BlonG'
-'''
-dnevnik.si
-'''
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class Dnevnik(BasicNewsRecipe):
- title = u'Dnevnik.si'
- __author__ = u'BlonG'
- description = u'''Dnevnik je \u010dasnik z ve\u010d kot polstoletno zgodovino.
- Pod sloganom \xbb\u017divljenje ima besedo\xab na svojih straneh prina\u0161a
- bralcem bogastvo informacij, komentarjev in kolumen in raznovrstnost
- pogledov, zaznamovanih z odgovornostjo do posameznika in \u0161ir\u0161e
- dru\u017ebe.'''
- oldest_article = 3
- max_articles_per_feed = 20
- language = 'sl'
- no_stylesheets = True
- use_embedded_content = False
-
- cover_url = 'https://sites.google.com/site/javno2010/home/dnevnik_cover.jpg'
-
- extra_css = '''
- h1{font-family:Arial,Helvetica,sans-serif; font-weight:bold;font-size:large;}
- h2{font-family:Arial,Helvetica,sans-serif; font-weight:normal;font-size:small;}
- p{font-family:Arial,Helvetica,sans-serif;font-size:small;}
- body{font-family:Helvetica,Arial,sans-serif;font-size:small;}
- '''
-
- keep_only_tags = [
- dict(name='div', attrs={'id': '_iprom_inStream'}),
- dict(name='div', attrs={'class': 'entry-content'}),
- ]
-
- remove_tags = [
- dict(name='div', attrs={'class': 'fb_article_top'}),
- dict(name='div', attrs={'class': 'related'}),
- dict(name='div', attrs={'class': 'fb_article_foot'}),
- dict(name='div', attrs={'class': 'spreading'}),
- dict(name='dl', attrs={'class': 'ad'}),
- dict(name='p', attrs={'class': 'report'}),
- dict(name='div', attrs={'class': 'hfeed comments'}),
- dict(name='dl', attrs={'id': 'entryPanel'}),
- dict(name='dl', attrs={'class': 'infopush ip_wide'}),
- dict(name='div', attrs={'class': 'sidebar'}),
- dict(name='dl', attrs={'class': 'bottom'}),
- dict(name='div', attrs={'id': 'footer'}),
- ]
-
- feeds = [
-
- (u'Slovenija', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=13'),
- (u'Svet', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=14'),
- (u'EU', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=116'),
- (u'Poslovni dnevnik', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=5'),
- (u'Kronika', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=15'),
- (u'Kultura', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=17'),
- (u'Zdravje', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=18'),
- (u'Znanost in IT', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=19'),
- (u'(Ne)verjetno', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=20'),
- (u'E-strada', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=21'),
- (u'Svet vozil', u'http://www.dnevnik.si/rss/?articleType=1&articleSection=22')
- ]
diff --git a/recipes/dnevnik_mk.recipe b/recipes/dnevnik_mk.recipe
deleted file mode 100644
index b20ff45d26..0000000000
--- a/recipes/dnevnik_mk.recipe
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/usr/bin/env python
-from __future__ import print_function
-
-__author__ = 'Darko Spasovski'
-__license__ = 'GPL v3'
-__copyright__ = '2011, Darko Spasovski '
-'''
-dnevnik.com.mk
-'''
-
-import datetime
-import re
-
-from calibre import browser
-from calibre.ebooks.BeautifulSoup import BeautifulSoup
-from calibre.web.feeds.news import BasicNewsRecipe
-
-
-class Dnevnik(BasicNewsRecipe):
-
- INDEX = 'http://www.dnevnik.com.mk'
- __author__ = 'Darko Spasovski'
- title = 'Dnevnik - mk'
- description = 'Daily Macedonian newspaper'
- masthead_url = 'http://www.dnevnik.com.mk/images/re-logo.gif'
- language = 'mk'
- publication_type = 'newspaper'
- category = 'news, Macedonia'
- max_articles_per_feed = 100
- remove_javascript = True
- no_stylesheets = True
- use_embedded_content = False
-
- preprocess_regexps = [(re.compile(i[0], re.IGNORECASE | re.DOTALL), i[1]) for i in
- [
- # Remove anything before the start of the article.
- (r'', lambda match: ''),
-
- # Remove anything after the end of the article.
- (r'', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: ''),
- (re.compile(r'.*?', re.IGNORECASE |
- re.DOTALL), lambda match: '