summaryrefslogtreecommitdiff
path: root/src/beautifulsoup/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/beautifulsoup/__init__.py')
-rw-r--r--src/beautifulsoup/__init__.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/beautifulsoup/__init__.py b/src/beautifulsoup/__init__.py
index 0999c07..e4a8ca4 100644
--- a/src/beautifulsoup/__init__.py
+++ b/src/beautifulsoup/__init__.py
@@ -83,10 +83,6 @@ __all__ = ['BeautifulSoup',
# Stuff imported from other packages
'Entities',
- 'HTMLParserXMLTreeBuilder',
- 'HTMLParserTreeBuilder',
- 'HTMLTreeBuilder',
- 'XMLTreeBuilder',
'BeautifulStoneSoup',
'ICantBelieveItsBeautifulSoup']
@@ -95,9 +91,6 @@ import re
from util import isList, isString, buildSet
from dammit import UnicodeDammit
-from builder import (
- HTMLParserXMLTreeBuilder, HTMLParserTreeBuilder, HTMLTreeBuilder,
- ICantBelieveItsValidHTMLTreeBuilder, XMLTreeBuilder)
from element import Entities, NavigableString, Tag
@@ -137,7 +130,9 @@ class BeautifulStoneSoup(Tag):
STRIP_ASCII_SPACES = { 9: None, 10: None, 12: None, 13: None, 32: None, }
def _defaultBuilder(self):
- return HTMLParserXMLTreeBuilder()
+ from lxml import etree
+ from builder.lxml_builder import LXMLTreeBuilder
+ return LXMLTreeBuilder(parser_class=etree.XMLParser)
def __init__(self, markup="", builder=None, parseOnlyThese=None,
fromEncoding=None):
@@ -175,7 +170,7 @@ class BeautifulStoneSoup(Tag):
else:
dammit = UnicodeDammit\
(markup, [self.fromEncoding, inDocumentEncoding],
- smartQuotesTo=self.builder.smartQuotesTo, isHTML=isHTML)
+ smartQuotesTo=self.builder.smart_quotes_to, isHTML=isHTML)
markup = dammit.unicode
self.originalEncoding = dammit.originalEncoding
self.declaredHTMLEncoding = dammit.declaredHTMLEncoding
@@ -349,7 +344,12 @@ class BeautifulStoneSoup(Tag):
class BeautifulSoup(BeautifulStoneSoup):
"""A convenience class for parsing HTML without creating a builder."""
def _defaultBuilder(self):
- return HTMLParserTreeBuilder()
+ try:
+ from builder.html5_builder import HTML5TreeBuilder
+ return HTML5TreeBuilder()
+ except ImportError:
+ from builder.lxml_builder import LXMLTreeBuilder
+ return LXMLTreeBuilder()
class StopParsing(Exception):