mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
61 lines
3.5 KiB
Python
61 lines
3.5 KiB
Python
#!/usr/bin/env python
|
|
# vim:fileencoding=utf-8
|
|
|
|
from calibre.web.feeds.news import BasicNewsRecipe
|
|
|
|
|
|
class Habr(BasicNewsRecipe):
|
|
title = '\u0425\u0430\u0431\u0440'
|
|
__author__ = 'bugmen00t'
|
|
description = '\u041D\u0430 \u200B\u0425\u0430\u0431\u0440\u0435 \u200B\u0434\u0443\u043C\u0430\u044E\u0449\u0438\u0435 \u200B\u043B\u044E\u0434\u0438 \u200B\u0434\u0435\u043B\u044F\u0442\u0441\u044F \u200B\u0443\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u043C \u200B\u200B\u043E\u043F\u044B\u0442\u043E\u043C. \u200B\u200B\u0417\u0434\u0435\u0441\u044C \u0431\u0443\u0434\u0435\u0442 \u200B\u200B\u043E\u0434\u0438\u043D\u0430\u043A\u043E\u0432\u043E \u200B\u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u043E \u200B\u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0441\u0442\u0430\u043C \u200B\u0438 \u0436\u0443\u0440\u043D\u0430\u043B\u0438\u0441\u0442\u0430\u043C, \u200B\u200B\u0430\u0434\u043C\u0438\u043D\u0430\u043C \u200B\u0438 \u0440\u0435\u043A\u043B\u0430\u043C\u0449\u0438\u043A\u0430\u043C, \u200B\u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430\u043C \u200B\u0438 \u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440\u0430\u043C, \u200B\u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440\u0430\u043C \u200B\u0432\u044B\u0441\u0448\u0435\u0433\u043E \u200B\u0438 \u0441\u0440\u0435\u0434\u043D\u0435\u0433\u043E \u200B\u0437\u0432\u0435\u043D\u0430, \u200B\u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430\u043C \u200B\u043A\u0440\u0443\u043F\u043D\u044B\u0445 \u200B\u043A\u043E\u043C\u043F\u0430\u043D\u0438\u0439 \u200B\u0438 \u043D\u0435\u0431\u043E\u043B\u044C\u0448\u0438\u0445 \u200B\u0444\u0438\u0440\u043C, \u200B\u0430 \u0442\u0430\u043A\u0436\u0435 \u200B\u0432\u0441\u0435\u043C \u200B\u0442\u0435\u043C, \u200B\u0434\u043B\u044F \u043A\u043E\u0433\u043E \u200BIT \u2014 \u200B\u044D\u0442\u043E \u043D\u0435 \u043F\u0440\u043E\u0441\u0442\u043E \u200B\u0434\u0432\u0435 \u0431\u0443\u043A\u0432\u044B \u200B\u0430\u043B\u0444\u0430\u0432\u0438\u0442\u0430.' # noqa: E501
|
|
publisher = 'Habr Blockchain Publishing LTD'
|
|
category = 'blog'
|
|
cover_url = u'https://habr.com/img/habr_ru.png'
|
|
language = 'ru'
|
|
no_stylesheets = True
|
|
remove_javascript = False
|
|
auto_cleanup = False
|
|
oldest_article = 7
|
|
max_articles_per_feed = 50
|
|
|
|
remove_tags_before = dict(name='h1')
|
|
|
|
remove_tags_after = dict(name='div', attrs={'class': 'tm-misprint-area'})
|
|
|
|
remove_tags = [
|
|
dict(name='div', attrs={'class': 'tm-article-presenter__meta'}),
|
|
dict(name='div', attrs={'class': 'tm-article-poll'})
|
|
]
|
|
|
|
feeds = [
|
|
(
|
|
'\u041D\u043E\u0432\u043E\u0441\u0442\u0438',
|
|
'https://habr.com/ru/rss/news/?fl=ru'
|
|
),
|
|
(
|
|
'\u0412\u0441\u0435 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B',
|
|
'https://habr.com/ru/rss/all/all/?fl=ru'
|
|
),
|
|
(
|
|
'\u0420\u0435\u0439\u0442\u0438\u043D\u0433 \u226510',
|
|
'https://habr.com/ru/rss/all/top10/?fl=ru'
|
|
),
|
|
(
|
|
'\u0420\u0435\u0439\u0442\u0438\u043D\u0433 \u226525',
|
|
'https://habr.com/ru/rss/all/top25/?fl=ru'
|
|
),
|
|
(
|
|
'\u0420\u0435\u0439\u0442\u0438\u043D\u0433 \u226550',
|
|
'https://habr.com/ru/rss/all/top50/?fl=ru'
|
|
),
|
|
(
|
|
'\u0420\u0435\u0439\u0442\u0438\u043D\u0433 \u2265100',
|
|
'https://habr.com/ru/rss/all/top100/?fl=ru'
|
|
),
|
|
]
|
|
|
|
def preprocess_html(self, soup):
|
|
for img in soup.findAll('img', attrs={'data-src': True}):
|
|
img['src'] = img['data-src']
|
|
return soup
|