X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/128ba2e8b97f2f3abfc40283c182fd08f2f0a818..ca03d8c1842d2ebac821c5d6cb6adee3701fe175:/librarian/text.py?ds=sidebyside diff --git a/librarian/text.py b/librarian/text.py index 39bf324..7ba6d29 100644 --- a/librarian/text.py +++ b/librarian/text.py @@ -3,10 +3,13 @@ # This file is part of Librarian, licensed under GNU Affero GPLv3 or later. # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. # +from __future__ import unicode_literals + import copy from librarian import functions, OutputFile from lxml import etree import os +import six functions.reg_substitute_entities() @@ -60,7 +63,7 @@ def transform(wldoc, flags=None, **options): license_description = parsed_dc.license_description license = parsed_dc.license if license: - license_description = u"Ten utwór jest udostepniony na licencji %s: \n%s" % ( + license_description = u"Ten utwór jest udostępniony na licencji %s: \n%s" % ( license_description, license) else: license_description = u"Ten utwór nie jest objęty majątkowym prawem autorskim i znajduje się " \ @@ -85,9 +88,9 @@ def transform(wldoc, flags=None, **options): if funders: funders = u"\n\nPublikację wsparli i wsparły: %s." % funders publisher = '\n\nWydawca: ' + ', '.join(parsed_dc.publisher) - isbn_element = document.edoc.find("//meta[@id='txt-id']") - if isbn_element is not None: - isbn = isbn_element.text.replace('ISBN-', '\n\nISBN ') + isbn = getattr(parsed_dc, 'isbn_txt', None) + if isbn: + isbn = '\n\n' + isbn else: isbn = '' else: @@ -103,7 +106,7 @@ def transform(wldoc, flags=None, **options): 'description': description, 'url': url, 'license_description': license_description, - 'text': unicode(result), + 'text': six.text_type(result), 'source': source, 'contributors': contributors, 'funders': funders, @@ -111,5 +114,5 @@ def transform(wldoc, flags=None, **options): 'isbn': isbn, }).encode('utf-8') else: - result = unicode(result).encode('utf-8') - return OutputFile.from_string("\r\n".join(result.splitlines()) + "\r\n") + result = six.text_type(result).encode('utf-8') + return OutputFile.from_bytes(b"\r\n".join(result.splitlines()) + b"\r\n")