mirror of
https://github.com/gryf/ebook-converter.git
synced 2026-03-27 22:03:32 +01:00
Removed prints and extract function from init module
This commit is contained in:
@@ -5,11 +5,9 @@ from various formats.
|
||||
import numbers
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
|
||||
from lxml import etree
|
||||
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.ebooks.chardet import xml_to_unicode
|
||||
|
||||
|
||||
@@ -123,13 +121,14 @@ def render_html_data(path_to_html, width, height):
|
||||
result = {}
|
||||
|
||||
def report_error(text=''):
|
||||
prints('Failed to render', path_to_html, 'with errors:',
|
||||
file=sys.stderr)
|
||||
__import__('pdb').set_trace()
|
||||
print(f'Failed to render {path_to_html}')
|
||||
# file=sys.stderr)
|
||||
if text:
|
||||
prints(text, file=sys.stderr)
|
||||
print(text) # , file=sys.stderr)
|
||||
if result and result['stdout_stderr']:
|
||||
with open(result['stdout_stderr'], 'rb') as f:
|
||||
prints(f.read(), file=sys.stderr)
|
||||
print(f.read()) # , file=sys.stderr)
|
||||
|
||||
with TemporaryDirectory('-render-html') as tdir:
|
||||
try:
|
||||
|
||||
@@ -14,7 +14,6 @@ from ebook_converter.ebooks.conversion.preprocess import HTMLPreProcessor
|
||||
from ebook_converter.ptempfile import PersistentTemporaryDirectory
|
||||
from ebook_converter.utils.date import parse_date
|
||||
from ebook_converter.utils.zipfile import ZipFile
|
||||
from ebook_converter import extract, walk
|
||||
from ebook_converter import constants
|
||||
from ebook_converter.constants_old import filesystem_encoding
|
||||
|
||||
@@ -694,11 +693,6 @@ OptionRecommendation(name='search_replace',
|
||||
input_fmt = 'epub'
|
||||
self.archive_input_tdir = None
|
||||
self.changed_options = set()
|
||||
if input_fmt in ARCHIVE_FMTS:
|
||||
self.log('Processing archive...')
|
||||
tdir = PersistentTemporaryDirectory('_pl_arc')
|
||||
self.input, input_fmt = self.unarchive(self.input, tdir)
|
||||
self.archive_input_tdir = tdir
|
||||
if os.access(self.input, os.R_OK):
|
||||
nfp = run_plugins_on_preprocess(self.input, input_fmt)
|
||||
if nfp != self.input:
|
||||
@@ -761,25 +755,6 @@ OptionRecommendation(name='search_replace',
|
||||
if merge_plugin_recs:
|
||||
self.merge_plugin_recommendations()
|
||||
|
||||
@classmethod
|
||||
def unarchive(self, path, tdir):
|
||||
extract(path, tdir)
|
||||
files = list(walk(tdir))
|
||||
files = [f if isinstance(f, str) else f.decode(filesystem_encoding)
|
||||
for f in files]
|
||||
from ebook_converter.customize.ui import available_input_formats
|
||||
fmts = set(available_input_formats())
|
||||
fmts -= {'htm', 'html', 'xhtm', 'xhtml'}
|
||||
fmts -= set(ARCHIVE_FMTS)
|
||||
|
||||
for ext in fmts:
|
||||
for f in files:
|
||||
if f.lower().endswith('.'+ext):
|
||||
if ext in ['txt', 'rtf'] and os.stat(f).st_size < 2048:
|
||||
continue
|
||||
return f, ext
|
||||
return self.find_html_index(files)
|
||||
|
||||
@classmethod
|
||||
def find_html_index(self, files):
|
||||
'''
|
||||
|
||||
@@ -8,7 +8,7 @@ import sys
|
||||
import urllib.parse
|
||||
|
||||
from ebook_converter.ebooks.chardet import detect_xml_encoding
|
||||
from ebook_converter import unicode_path, replace_entities
|
||||
from ebook_converter import replace_entities
|
||||
|
||||
|
||||
class Link(object):
|
||||
|
||||
@@ -24,7 +24,6 @@ class HTML2ZIP(FileTypePlugin):
|
||||
|
||||
def run(self, htmlfile):
|
||||
import codecs
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.ptempfile import TemporaryDirectory
|
||||
from ebook_converter.gui2.convert.gui_conversion import gui_convert
|
||||
from ebook_converter.customize.conversion import OptionRecommendation
|
||||
@@ -40,7 +39,8 @@ class HTML2ZIP(FileTypePlugin):
|
||||
try:
|
||||
codecs.lookup(enc)
|
||||
except Exception:
|
||||
prints('Ignoring invalid input encoding for HTML:', enc)
|
||||
print('Ignoring invalid input encoding for HTML: %s',
|
||||
enc)
|
||||
else:
|
||||
recs.append(['input_encoding', enc, OptionRecommendation.HIGH])
|
||||
if bf == 'bf':
|
||||
|
||||
@@ -8,7 +8,7 @@ import re
|
||||
import sys
|
||||
import urllib.parse
|
||||
|
||||
from ebook_converter import prints, force_unicode
|
||||
from ebook_converter import force_unicode
|
||||
from ebook_converter.utils.config_base import tweaks
|
||||
from ebook_converter.polyglot.urllib import unquote
|
||||
|
||||
@@ -16,8 +16,8 @@ from ebook_converter.polyglot.urllib import unquote
|
||||
try:
|
||||
_author_pat = re.compile(tweaks['authors_split_regex'])
|
||||
except Exception:
|
||||
prints('Author split regexp:', tweaks['authors_split_regex'],
|
||||
'is invalid, using default')
|
||||
print(f"Author split regexp: {tweaks['authors_split_regex']}, is invalid, "
|
||||
f"using default")
|
||||
_author_pat = re.compile(r'(?i),?\s+(and|with)\s+')
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import copy, traceback
|
||||
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.constants_old import DEBUG
|
||||
from ebook_converter.ebooks.metadata.book import (SC_COPYABLE_FIELDS,
|
||||
SC_FIELDS_COPY_NOT_NULL, STANDARD_METADATA_FIELDS,
|
||||
@@ -453,12 +452,12 @@ class Metadata(object):
|
||||
# Old Metadata API {{{
|
||||
def print_all_attributes(self):
|
||||
for x in STANDARD_METADATA_FIELDS:
|
||||
prints('%s:'%x, getattr(self, x, 'None'))
|
||||
print('%s:' % x, getattr(self, x, 'None'))
|
||||
for x in self.custom_field_keys():
|
||||
meta = self.get_user_metadata(x, make_copy=False)
|
||||
if meta is not None:
|
||||
prints(x, meta)
|
||||
prints('--------------')
|
||||
print(x, meta)
|
||||
print('--------------')
|
||||
|
||||
def smart_update(self, other, replace_metadata=False):
|
||||
'''
|
||||
|
||||
@@ -12,7 +12,7 @@ from lxml import etree
|
||||
from ebook_converter.utils.date import parse_only_date
|
||||
from ebook_converter.utils.img import save_cover_data_to
|
||||
from ebook_converter.utils.imghdr import identify
|
||||
from ebook_converter import prints, force_unicode
|
||||
from ebook_converter import force_unicode
|
||||
from ebook_converter.ebooks.metadata import MetaInformation, check_isbn
|
||||
from ebook_converter.ebooks.chardet import xml_to_unicode
|
||||
from ebook_converter.polyglot.binary import as_base64_unicode
|
||||
@@ -237,8 +237,8 @@ def _parse_cover_data(root, imgid, mi, ctx):
|
||||
fmt = identify(cdata)[0]
|
||||
mi.cover_data = (fmt, cdata)
|
||||
else:
|
||||
prints("WARNING: Unsupported coverpage mime-type '%s' (id=#%s)" %
|
||||
(mimetype, imgid))
|
||||
print(f"WARNING: Unsupported coverpage mime-type '{mimetype}' "
|
||||
f"(id=#{imgid})")
|
||||
|
||||
|
||||
def _parse_tags(root, mi, ctx):
|
||||
|
||||
@@ -32,7 +32,6 @@ from ebook_converter.ebooks.metadata import string_to_authors, \
|
||||
from ebook_converter.ebooks.metadata.book.base import Metadata
|
||||
from ebook_converter.utils.date import parse_date, isoformat
|
||||
from ebook_converter.utils.localization import get_lang, canonicalize_lang
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.utils.cleantext import clean_ascii_chars, clean_xml_chars
|
||||
from ebook_converter.utils.config import tweaks
|
||||
from ebook_converter.polyglot.urllib import unquote
|
||||
@@ -516,7 +515,7 @@ def serialize_user_metadata(metadata_elem, all_user_metadata,
|
||||
fm = object_to_unicode(fm)
|
||||
fm = json.dumps(fm, default=to_json, ensure_ascii=False)
|
||||
except Exception:
|
||||
prints('Failed to write user metadata:', name)
|
||||
print('Failed to write user metadata: {name}')
|
||||
traceback.print_exc()
|
||||
continue
|
||||
meta = metadata_elem.makeelement('meta')
|
||||
@@ -671,7 +670,7 @@ class OPF(object): # {{{
|
||||
decode_is_multiple(fm)
|
||||
temp.set_user_metadata(name, fm)
|
||||
except Exception:
|
||||
prints('Failed to read user metadata:', name)
|
||||
print('Failed to read user metadata: {name}')
|
||||
traceback.print_exc()
|
||||
continue
|
||||
self._user_metadata_ = temp.get_all_user_metadata(True)
|
||||
|
||||
@@ -6,7 +6,6 @@ import re
|
||||
from lxml import etree
|
||||
|
||||
from ebook_converter import constants as const
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.ebooks.metadata import authors_to_string
|
||||
from ebook_converter.ebooks.metadata import check_isbn
|
||||
from ebook_converter.ebooks.metadata import string_to_authors
|
||||
@@ -923,7 +922,7 @@ def read_user_metadata2(root, remove_tags=False):
|
||||
decode_is_multiple(fm)
|
||||
ans[name] = fm
|
||||
except Exception:
|
||||
prints('Failed to read user metadata:', name)
|
||||
print('Failed to read user metadata: {name}')
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
continue
|
||||
|
||||
@@ -4,7 +4,6 @@ Read meta information from PDF files
|
||||
import os, subprocess, shutil, re
|
||||
from functools import partial
|
||||
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.ptempfile import TemporaryDirectory
|
||||
from ebook_converter.ebooks.metadata import (
|
||||
MetaInformation, string_to_authors, check_isbn, check_doi)
|
||||
@@ -39,12 +38,12 @@ def read_info(outputdir, get_cover):
|
||||
raw = subprocess.check_output([pdfinfo, '-enc', 'UTF-8', '-isodates',
|
||||
source_file])
|
||||
except subprocess.CalledProcessError as e:
|
||||
prints('pdfinfo errored out with return code: %d'%e.returncode)
|
||||
print(f'pdfinfo errored out with return code: {e.returncode}')
|
||||
return None
|
||||
try:
|
||||
info_raw = raw.decode('utf-8')
|
||||
except UnicodeDecodeError:
|
||||
prints('pdfinfo returned no UTF-8 data')
|
||||
print('pdfinfo returned no UTF-8 data')
|
||||
return None
|
||||
|
||||
for line in info_raw.splitlines():
|
||||
@@ -63,7 +62,8 @@ def read_info(outputdir, get_cover):
|
||||
try:
|
||||
raw = subprocess.check_output([pdfinfo, '-meta', source_file]).strip()
|
||||
except subprocess.CalledProcessError as e:
|
||||
prints('pdfinfo failed to read XML metadata with return code: %d'%e.returncode)
|
||||
print('pdfinfo failed to read XML metadata with return code: '
|
||||
f'{e.returncode}')
|
||||
else:
|
||||
parts = re.split(br'^Metadata:', raw, 1, flags=re.MULTILINE)
|
||||
if len(parts) > 1:
|
||||
@@ -77,7 +77,7 @@ def read_info(outputdir, get_cover):
|
||||
subprocess.check_call([pdftoppm, '-singlefile', '-jpeg',
|
||||
'-cropbox', source_file, cover_file])
|
||||
except subprocess.CalledProcessError as e:
|
||||
prints('pdftoppm errored out with return code: %d'%e.returncode)
|
||||
print('pdftoppm errored out with return code: {e.returncode}')
|
||||
|
||||
return ans
|
||||
|
||||
|
||||
@@ -4,11 +4,11 @@ import itertools
|
||||
import json
|
||||
import re
|
||||
import sys
|
||||
import traceback
|
||||
|
||||
from lxml import etree
|
||||
from lxml.builder import ElementMaker
|
||||
|
||||
from ebook_converter import prints
|
||||
from ebook_converter.ebooks.metadata import check_isbn, check_doi
|
||||
from ebook_converter.ebooks.metadata.book.base import Metadata
|
||||
from ebook_converter.ebooks.metadata.opf2 import dump_dict
|
||||
@@ -192,7 +192,7 @@ def read_user_metadata(mi, root):
|
||||
mi.set_user_metadata(name, fm)
|
||||
fields.add(name)
|
||||
except Exception:
|
||||
prints('Failed to read user metadata:', name)
|
||||
print(f'Failed to read user metadata: {name}')
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
|
||||
@@ -467,8 +467,7 @@ def create_user_metadata(calibre, all_user_metadata):
|
||||
fm = object_to_unicode(fm)
|
||||
fm = json.dumps(fm, default=to_json, ensure_ascii=False)
|
||||
except Exception:
|
||||
prints('Failed to write user metadata:', name)
|
||||
import traceback
|
||||
print('Failed to write user metadata: {name}')
|
||||
traceback.print_exc()
|
||||
continue
|
||||
li = bag.makeelement(expand('rdf:li'))
|
||||
|
||||
@@ -7,7 +7,7 @@ import sys
|
||||
|
||||
from lxml import etree
|
||||
|
||||
from ebook_converter import CurrentDir, xml_replace_entities, prints
|
||||
from ebook_converter import CurrentDir, xml_replace_entities
|
||||
from ebook_converter.constants_old import isbsd, islinux, isosx
|
||||
from ebook_converter.ebooks import ConversionError, DRMError
|
||||
from ebook_converter.ebooks.chardet import xml_to_unicode
|
||||
@@ -78,8 +78,8 @@ def pdftohtml(output_dir, pdf_path, no_images, as_xml=False):
|
||||
raise ConversionError('pdftohtml failed with return code: '
|
||||
'%d\n%s' % (ret, out))
|
||||
if out:
|
||||
prints("pdftohtml log:")
|
||||
prints(out)
|
||||
print("pdftohtml log:")
|
||||
print(out)
|
||||
if not os.path.exists(index) or os.stat(index).st_size < 100:
|
||||
raise DRMError()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user