Move the import oh html2text outside of misc

This commit is contained in:
Florent 2014-07-09 11:43:14 +02:00
commit 1daa866949
20 changed files with 57 additions and 32 deletions

View file

@ -28,7 +28,7 @@ from dateutil.parser import parse as parse_date
from weboob.capabilities.base import empty
from weboob.tools.compat import basestring
from weboob.tools.exceptions import ParseError
from weboob.tools.misc import html2text
from weboob.tools.html import html2text
_NO_DEFAULT = object()

35
weboob/tools/html.py Normal file
View file

@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# Copyright(C) 2010-2014 Romain Bignon
#
# This file is part of weboob.
#
# weboob is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# weboob is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
import warnings
__all__ = ['html2text']
try:
import html2text as h2t
h2t.UNICODE_SNOB = 1
h2t.SKIP_INTERNAL_LINKS = True
h2t.INLINE_LINKS = False
h2t.LINKS_EACH_PARAGRAPH = True
html2text = h2t.html2text
except ImportError:
def html2text(html):
warnings.warn('python-html2text is not present. HTML pages are not converted into text.', stacklevel=2)
return html

View file

@ -18,7 +18,6 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
import warnings
from time import time, sleep
import os
import sys
@ -28,7 +27,7 @@ import types
from .compat import unicode
__all__ = ['get_backtrace', 'get_bytes_size', 'html2text', 'iter_fields',
__all__ = ['get_backtrace', 'get_bytes_size', 'iter_fields',
'to_unicode', 'limit']
@ -58,18 +57,6 @@ def get_bytes_size(size, unit_name):
}
return float(size * unit_data.get(unit_name, 1))
try:
import html2text as h2t
h2t.UNICODE_SNOB = 1
h2t.SKIP_INTERNAL_LINKS = True
h2t.INLINE_LINKS = False
h2t.LINKS_EACH_PARAGRAPH = True
html2text = h2t.html2text
except ImportError:
def html2text(html):
warnings.warn('python-html2text is not present. HTML pages are not converted into text.', stacklevel=2)
return html
def iter_fields(obj):
for attribute_name in dir(obj):