mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Check doi in usual info fields
This commit is contained in:
parent
7b3c699c7a
commit
f6ed89ddb7
@ -9,7 +9,8 @@ from functools import partial
|
|||||||
from calibre import prints
|
from calibre import prints
|
||||||
from calibre.constants import iswindows
|
from calibre.constants import iswindows
|
||||||
from calibre.ptempfile import TemporaryDirectory
|
from calibre.ptempfile import TemporaryDirectory
|
||||||
from calibre.ebooks.metadata import MetaInformation, string_to_authors, check_isbn
|
from calibre.ebooks.metadata import MetaInformation, string_to_authors, \
|
||||||
|
check_isbn, check_doi
|
||||||
from calibre.utils.ipc.simple_worker import fork_job, WorkerError
|
from calibre.utils.ipc.simple_worker import fork_job, WorkerError
|
||||||
|
|
||||||
#_isbn_pat = re.compile(r'ISBN[: ]*([-0-9Xx]+)')
|
#_isbn_pat = re.compile(r'ISBN[: ]*([-0-9Xx]+)')
|
||||||
@ -134,6 +135,15 @@ def get_metadata(stream, cover=True):
|
|||||||
if 'xmp_metadata' in info:
|
if 'xmp_metadata' in info:
|
||||||
from calibre.ebooks.metadata.xmp import consolidate_metadata
|
from calibre.ebooks.metadata.xmp import consolidate_metadata
|
||||||
mi = consolidate_metadata(mi, info['xmp_metadata'])
|
mi = consolidate_metadata(mi, info['xmp_metadata'])
|
||||||
|
|
||||||
|
if 'doi' not in mi.get_identifiers().iterkeys():
|
||||||
|
for k,v in info.iteritems():
|
||||||
|
if k != 'xmp_metadata':
|
||||||
|
doi = check_doi(v)
|
||||||
|
if doi:
|
||||||
|
mi.set_identifiers({'doi':doi})
|
||||||
|
break
|
||||||
|
|
||||||
if cdata:
|
if cdata:
|
||||||
mi.cover_data = ('jpeg', cdata)
|
mi.cover_data = ('jpeg', cdata)
|
||||||
return mi
|
return mi
|
||||||
|
@ -13,7 +13,6 @@ from collections import defaultdict
|
|||||||
from lxml import etree
|
from lxml import etree
|
||||||
from lxml.builder import ElementMaker
|
from lxml.builder import ElementMaker
|
||||||
|
|
||||||
from calibre import prints
|
|
||||||
from calibre import replace_entities
|
from calibre import replace_entities
|
||||||
from calibre.ebooks.metadata import check_isbn, check_doi
|
from calibre.ebooks.metadata import check_isbn, check_doi
|
||||||
from calibre.ebooks.metadata.book.base import Metadata
|
from calibre.ebooks.metadata.book.base import Metadata
|
||||||
|
Loading…
x
Reference in New Issue
Block a user