X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=parse_html%2Fbkmk_ph_etreetidy.py;h=b85ae2ae209c37decf8ebce34e649d25dcc7012b;hb=1249f2d538e9d679421d7bbb59dfac33fad537f4;hp=f5e794c68aa7c9446a903dca081f23e739fc95d6;hpb=71712390f4edb041609ff7bc9272d12a5c1a9b1d;p=bookmarks_db.git diff --git a/parse_html/bkmk_ph_etreetidy.py b/parse_html/bkmk_ph_etreetidy.py index f5e794c..b85ae2a 100644 --- a/parse_html/bkmk_ph_etreetidy.py +++ b/parse_html/bkmk_ph_etreetidy.py @@ -4,7 +4,7 @@ This file is a part of Bookmarks database and Internet robot. """ __author__ = "Oleg Broytman " -__copyright__ = "Copyright (C) 2010-2012 PhiloSoft Design" +__copyright__ = "Copyright (C) 2010-2013 PhiloSoft Design" __license__ = "GNU GPL" __all__ = ['parse_html'] @@ -29,8 +29,6 @@ def parse_html(filename, charset=None, log=None): title = html_tree.findtext('head/title') if title is None: title = html_tree.findtext('title') - if title is None: - return None meta = html_tree.findall('head/meta') for m in meta: @@ -43,10 +41,13 @@ def parse_html(filename, charset=None, log=None): break except IndexError: meta_charset = False + elif m.get('charset', ''): + meta_charset = m.get('charset').lower() + break else: meta_charset = False - if charset or meta_charset: + if title and (charset or meta_charset): title = title.encode(charset or meta_charset) for m in meta: @@ -63,4 +64,6 @@ def parse_html(filename, charset=None, log=None): else: icon = None + if (title is None) and (refresh is None) and (icon is None): + return None return HTMLParser(charset, meta_charset, title, refresh, icon)