calibre/recipes/jazzpress.recipe
2013-03-06 20:28:12 +01:00

51 lines
1.4 KiB
Python

#!/usr/bin/env python
# -*- coding: utf-8 -*-
__license__ = 'GPL v3'
__copyright__ = u'Łukasz Grąbczewski 2011-2013'
__version__ = '2.0'
import re, zipfile, os
from calibre.ptempfile import PersistentTemporaryFile
from calibre.ebooks.conversion.cli import main
class jazzpress(BasicNewsRecipe):
__author__ = u'Łukasz Grąbczewski'
title = 'JazzPRESS'
language = 'pl'
publisher = 'Fundacja Popularyzacji Muzyki Jazzowej EuroJAZZ'
publication_type = 'magazine'
description = u'Internetowa gazeta poświęcona muzyce improwizowanej'
conversion_options = {
'authors' : 'Fundacja Popularyzacji Muzyki Jazzowej EuroJAZZ'
,'publisher' : publisher
,'language' : language
,'preserve_cover_aspect_ratio': True
,'remove_first_image': True
}
def build_index(self):
browser = self.get_browser()
rc = browser.open('http://radiojazz.fm/')
# find the link
epublink = browser.find_link(url_regex=re.compile('e_jazzpress\d\d\d\d\_epub'))
# download ebook
self.report_progress(0,_('Downloading ePUB'))
response = browser.follow_link(epublink)
book_file = PersistentTemporaryFile(suffix='.epub')
book_file.write(response.read())
book_file.close()
# convert
self.report_progress(0.2,_('Converting to OEB'))
oebdir = self.output_dir + '/INPUT/'
main(['ebook-convert', book_file.name, oebdir])
# feed calibre
index = os.path.join(oebdir, 'content.opf')
return index