mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
...
This commit is contained in:
parent
230812bc74
commit
0a567a206a
@ -1,3 +1,5 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
# vim:fileencoding=utf-8
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
|
|
||||||
from calibre.web.feeds.news import BasicNewsRecipe
|
from calibre.web.feeds.news import BasicNewsRecipe
|
||||||
@ -28,6 +30,20 @@ class HuffingtonPostRecipe(BasicNewsRecipe):
|
|||||||
no_stylesheets = True
|
no_stylesheets = True
|
||||||
remove_javascript = True
|
remove_javascript = True
|
||||||
|
|
||||||
|
recipe_specific_options = {
|
||||||
|
'days': {
|
||||||
|
'short': 'Oldest article to download from this news source. In days ',
|
||||||
|
'long': 'For example, 0.5, gives you articles from the past 12 hours',
|
||||||
|
'default': str(oldest_article)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
BasicNewsRecipe.__init__(self, *args, **kwargs)
|
||||||
|
d = self.recipe_specific_options.get('days')
|
||||||
|
if d and isinstance(d, str):
|
||||||
|
self.oldest_article = float(d)
|
||||||
|
|
||||||
keep_only_tags = [
|
keep_only_tags = [
|
||||||
classes('entry__header entry__body')
|
classes('entry__header entry__body')
|
||||||
]
|
]
|
||||||
|
@ -79,9 +79,19 @@ class NewYorker(BasicNewsRecipe):
|
|||||||
# img.save(buf, format='JPEG')
|
# img.save(buf, format='JPEG')
|
||||||
# return buf.getvalue()
|
# return buf.getvalue()
|
||||||
|
|
||||||
|
recipe_specific_options = {
|
||||||
|
'date': {
|
||||||
|
'short': 'The date of the edition to download (YYYY/MM/DD format)',
|
||||||
|
'long': 'For example, 2024/07/08'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
def parse_index(self):
|
def parse_index(self):
|
||||||
soup = self.index_to_soup(
|
issue_url = 'https://www.newyorker.com/magazine?intcid=magazine'
|
||||||
'https://www.newyorker.com/magazine?intcid=magazine')
|
d = self.recipe_specific_options.get('date')
|
||||||
|
if d and isinstance(d, str):
|
||||||
|
issue_url = 'https://www.newyorker.com/magazine/' + d
|
||||||
|
soup = self.index_to_soup(issue_url)
|
||||||
cover_img = soup.find('picture',
|
cover_img = soup.find('picture',
|
||||||
attrs={'class': lambda x: x and 'asset-embed__responsive-asset' in x})
|
attrs={'class': lambda x: x and 'asset-embed__responsive-asset' in x})
|
||||||
if cover_img is not None:
|
if cover_img is not None:
|
||||||
|
@ -19,7 +19,7 @@ class NewYorkMagazine(BasicNewsRecipe):
|
|||||||
title = 'New York Magazine'
|
title = 'New York Magazine'
|
||||||
__author__ = 'Kovid Goyal'
|
__author__ = 'Kovid Goyal'
|
||||||
description = 'Food, culture, arts and entertainment in New York'
|
description = 'Food, culture, arts and entertainment in New York'
|
||||||
language = 'en'
|
language = 'en_US'
|
||||||
no_stylesheets = True
|
no_stylesheets = True
|
||||||
remove_javascript = True
|
remove_javascript = True
|
||||||
encoding = 'utf-8'
|
encoding = 'utf-8'
|
||||||
@ -32,8 +32,19 @@ class NewYorkMagazine(BasicNewsRecipe):
|
|||||||
]
|
]
|
||||||
remove_attributes = ['srcset']
|
remove_attributes = ['srcset']
|
||||||
|
|
||||||
|
recipe_specific_options = {
|
||||||
|
'date': {
|
||||||
|
'short': 'The date of the edition to download (YYYY-MM-DD format)',
|
||||||
|
'long': 'For example, 2024-07-01'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
def nymag_get_index(self):
|
def nymag_get_index(self):
|
||||||
return self.index_to_soup('https://nymag.com/maglinks/nym-home-05')
|
issue_url = 'https://nymag.com/maglinks/nym-home-05'
|
||||||
|
d = self.recipe_specific_options.get('date')
|
||||||
|
if d and isinstance(d, str):
|
||||||
|
issue_url = 'https://nymag.com/magazine/toc/' + d + '.html'
|
||||||
|
return self.index_to_soup(issue_url)
|
||||||
|
|
||||||
def parse_index(self):
|
def parse_index(self):
|
||||||
soup = self.nymag_get_index()
|
soup = self.nymag_get_index()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user