mirror of
https://github.com/kemayo/leech
synced 2026-01-01 13:16:52 +01:00
Capture cover options from leech.json and pass them to generate_epub()
This commit is contained in:
parent
cc29936d92
commit
f2fc2c11db
2 changed files with 8 additions and 5 deletions
|
|
@ -70,6 +70,7 @@ class CoverOptions:
|
|||
wrapat = attr.ib(default=None, convert=attr.converters.optional(int))
|
||||
bgcolor = attr.ib(default=None, convert=attr.converters.optional(tuple))
|
||||
textcolor = attr.ib(default=None, convert=attr.converters.optional(tuple))
|
||||
cover_url = attr.ib(default=None, convert=attr.converters.optional(str))
|
||||
|
||||
|
||||
def chapter_html(story, titleprefix=None):
|
||||
|
|
@ -90,7 +91,7 @@ def chapter_html(story, titleprefix=None):
|
|||
return chapters
|
||||
|
||||
|
||||
def generate_epub(story, output_filename=None, cover_options={}):
|
||||
def generate_epub(story, cover_options={}, output_filename=None):
|
||||
dates = list(story.dates())
|
||||
metadata = {
|
||||
'title': story.title,
|
||||
|
|
|
|||
10
leech.py
10
leech.py
|
|
@ -56,11 +56,12 @@ def load_on_disk_options(site):
|
|||
store = json.load(store_file)
|
||||
login = store.get('logins', {}).get(site.__name__, False)
|
||||
configured_site_options = store.get('site_options', {}).get(site.__name__, {})
|
||||
cover_options = store.get('cover')
|
||||
except FileNotFoundError:
|
||||
logger.info("Unable to locate leech.json. Continuing assuming it does not exist.")
|
||||
login = False
|
||||
configured_site_options = {}
|
||||
return configured_site_options, login
|
||||
return configured_site_options, login, cover_options
|
||||
|
||||
|
||||
def create_options(site, site_options, unused_flags):
|
||||
|
|
@ -71,7 +72,7 @@ def create_options(site, site_options, unused_flags):
|
|||
|
||||
flag_specified_site_options = site.interpret_site_specific_options(**unused_flags)
|
||||
|
||||
configured_site_options, login = load_on_disk_options(site)
|
||||
configured_site_options, login, cover_options = load_on_disk_options(site)
|
||||
|
||||
overridden_site_options = json.loads(site_options)
|
||||
|
||||
|
|
@ -81,7 +82,8 @@ def create_options(site, site_options, unused_flags):
|
|||
list(default_site_options.items()) +
|
||||
list(configured_site_options.items()) +
|
||||
list(overridden_site_options.items()) +
|
||||
list(flag_specified_site_options.items())
|
||||
list(flag_specified_site_options.items()) +
|
||||
list(cover_options.items())
|
||||
)
|
||||
return options, login
|
||||
|
||||
|
|
@ -146,7 +148,7 @@ def download(url, site_options, cache, verbose, **other_flags):
|
|||
options, login = create_options(site, site_options, other_flags)
|
||||
story = open_story(site, url, session, login, options)
|
||||
|
||||
filename = ebook.generate_epub(story)
|
||||
filename = ebook.generate_epub(story, options)
|
||||
logger.info("File created: " + filename)
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue