]> git.phdru.name Git - bookmarks_db.git/blobdiff - parse_html/bkmk_ph_beautifulsoup.py
Fix(Robot): Stop splitting and un-splitting URLs
[bookmarks_db.git] / parse_html / bkmk_ph_beautifulsoup.py
index e29b4997932d764d29ebc290b9f407ec796a8063..0aad3dde72557abdb2f97edeea4d814151f388f6 100644 (file)
@@ -14,7 +14,9 @@ __all__ = ['parse_html']
 import re
 from sgmllib import SGMLParser, SGMLParseError
 from BeautifulSoup import BeautifulSoup, CData
+
 from .bkmk_ph_util import HTMLParser
+from compat import string_type
 
 DEFAULT_CHARSET = "cp1251"  # Stupid default for Russian Cyrillic
 
@@ -60,6 +62,8 @@ def _parse_html(html_text, charset):
 
 
 def parse_html(html_text, charset=None, log=None):
+    if not html_text:
+        return None
     root = _parse_html(html_text, charset)
     if root is None:
         return None
@@ -95,7 +99,7 @@ def parse_html(html_text, charset=None, log=None):
         else:
             parts = []
             for part in title:
-                if not isinstance(part, basestring):
+                if not isinstance(part, string_type):
                     part = part.decode()
                 parts.append(part.strip())
             title = ''.join(parts)
@@ -123,8 +127,8 @@ def parse_html(html_text, charset=None, log=None):
             if meta_content:
                 meta_charset = _charset = meta_content.lower()
 
-    if title and (_charset or meta_charset):
-        title = title.encode(_charset or meta_charset)
+    #if title and (_charset or meta_charset):
+    #    title = title.encode(_charset or meta_charset)
 
     meta = head.find(_find_refresh, recursive=False)
     if meta: