diff --git a/src/calibre/ebooks/metadata/html.py b/src/calibre/ebooks/metadata/html.py
index a2ca76aa54..a8cc6c0eae 100644
--- a/src/calibre/ebooks/metadata/html.py
+++ b/src/calibre/ebooks/metadata/html.py
@@ -34,6 +34,7 @@ def get_metadata_(src, encoding=None):
# Title
title = None
pat = re.compile(r'', re.DOTALL)
+ src = src[:150000] # Searching shouldn't take too long
match = pat.search(src)
if match:
title = match.group(2)