diff --git a/seoanalyzer/page.py b/seoanalyzer/page.py index a37f9c6..6918a2f 100644 --- a/seoanalyzer/page.py +++ b/seoanalyzer/page.py @@ -165,7 +165,10 @@ def analyze_heading_tags(self, bs): Analyze the heading tags and populate the headings """ - dom = lh.fromstring(str(bs)) + try: + dom = lh.fromstring(str(bs)) + except ValueError as _: + dom = lh.fromstring(bs.encode('utf-8')) for tag, xpath in HEADING_TAGS_XPATHS.items(): value = [heading.text_content() for heading in dom.xpath(xpath)] if value: @@ -176,7 +179,10 @@ def analyze_additional_tags(self, bs): Analyze additional tags and populate the additional info """ - dom = lh.fromstring(str(bs)) + try: + dom = lh.fromstring(str(bs)) + except ValueError as _: + dom = lh.fromstring(bs.encode('utf-8')) for tag, xpath in ADDITIONAL_TAGS_XPATHS.items(): value = dom.xpath(xpath) if value: