diff --git a/src/libprs500/ebooks/metadata/html.py b/src/libprs500/ebooks/metadata/html.py
index a567b09bfa..eec756a41b 100644
--- a/src/libprs500/ebooks/metadata/html.py
+++ b/src/libprs500/ebooks/metadata/html.py
@@ -32,6 +32,11 @@ def get_metadata(stream):
match = pat.search(src)
if match:
title = match.group(1)
+ else:
+ pat = re.compile('
([^<>]+?)', re.IGNORECASE)
+ match = pat.search(src)
+ if match:
+ title = match.group(1)
# Author
author = None
diff --git a/src/libprs500/ebooks/metadata/meta.py b/src/libprs500/ebooks/metadata/meta.py
index 1d1fdc4498..cb3cb933a1 100644
--- a/src/libprs500/ebooks/metadata/meta.py
+++ b/src/libprs500/ebooks/metadata/meta.py
@@ -39,8 +39,6 @@ def get_metadata(stream, stream_type='lrf'):
name = os.path.basename(stream.name) if hasattr(stream, 'name') else ''
base = metadata_from_filename(name)
- if not base.title:
- base.title = name if name else 'Unknown'
if not base.authors:
base.authors = ['Unknown']
base.smart_update(mi)
@@ -77,5 +75,7 @@ def metadata_from_filename(name):
mi.authors = authors
except IndexError:
pass
+ if not mi.title:
+ mi.title = name
return mi
\ No newline at end of file